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.
Noviseda_FactuGES2/Source/Modulos/Facturas de cliente/Views/uViewDetallesFacturaCliente.pas
2010-02-01 15:48:29 +00:00

83 lines
3.3 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, SpTBXItem, TB2Dock, TB2Toolbar,
uControllerDetallesArticulos, uViewDetallesArticulos, uBizFacturasCliente,
uDAInterfaces, cxDropDownEdit, cxButtonEdit, Menus, cxGridCustomPopupMenu,
cxGridPopupMenu, cxEditRepositoryItems, uViewDetallesArticulosParaVenta,
cxLookAndFeels, cxLookAndFeelPainters;
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(TfrViewDetallesArticulosParaVenta, IViewDetallesFacturaCliente)
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
if (Factura.TIPO = CTE_TIPO_ABONO) then
Result := (Controller as IDetallesFacturaClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Factura.Cliente.ID, -1)
else
Result := (Controller as IDetallesFacturaClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Factura.Cliente.ID);
end;
procedure TfrViewDetallesFacturaCliente.AnadirArticulosInterno;
begin
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente, true, -1)
else
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente);
end;
function TfrViewDetallesFacturaCliente.GetFactura: IBizFacturaCliente;
begin
Result := FFactura;
end;
procedure TfrViewDetallesFacturaCliente.RellenarArticulosInterno;
begin
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente, False, -1)
else
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente, False);
end;
procedure TfrViewDetallesFacturaCliente.SetFactura(const Value: IBizFacturaCliente);
begin
FFactura := Value;
end;
end.