Tecsitel_FactuGES2/Source/Modulos/Facturas de cliente/Views/uViewDetallesFacturaCliente.pas
2011-05-05 14:54:31 +00:00

82 lines
3.2 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,
uArticulosController, uViewDetallesArticulos, uBizFacturasCliente,
uDAInterfaces, cxDropDownEdit, cxButtonEdit, Menus, cxGridCustomPopupMenu,
cxGridPopupMenu, cxEditRepositoryItems, uViewDetallesArticulosParaVenta;
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.