AbetoDesign_FactuGES2/Source/Modulos/Albaranes de cliente/Views/uViewDetallesAlbaranCliente.pas

94 lines
3.7 KiB
ObjectPascal

unit uViewDetallesAlbaranCliente;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewDetallesArticulos, 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, ExtActns, StdActns,
JvExStdCtrls, JvCombobox, JvColorCombo, TB2Item, TBX, TB2Dock, TB2Toolbar,
uControllerDetallesArticulos, uBizAlbaranesCliente, cxDropDownEdit,
cxCalendar, cxDBEdit, dxLayoutControl, cxContainer, cxLookupEdit,
cxDBLookupEdit, cxDBLookupComboBox, uDAInterfaces, cxMemo;
type
IViewDetallesAlbaranCliente = interface(IViewDetallesArticulos)
['{9326E1A0-BD5E-4BE1-BB3B-6A52C3394118}']
function GetAlbaran: IBizAlbaranCliente;
procedure SetAlbaran(const Value: IBizAlbaranCliente);
property Albaran: IBizAlbaranCliente read GetAlbaran write SetAlbaran;
end;
TfrViewDetallesAlbaranCliente = class(TfrViewDetallesArticulos, IViewDetallesAlbaranCliente)
cxRichEdit1: TcxRichEdit;
procedure cxGridViewDESCRIPCIONGetPropertiesForEdit(
Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
var AProperties: TcxCustomEditProperties);
protected
FAlbaran: IBizAlbaranCliente;
function GetAlbaran: IBizAlbaranCliente;
procedure SetAlbaran(const Value: IBizAlbaranCliente);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
property Albaran: IBizAlbaranCliente read GetAlbaran write SetAlbaran;
end;
implementation
{$R *.dfm}
uses uDetallesAlbaranClienteController, uViewDetallesBase;
{ TfrViewDetallesAlbaranProveedor }
function TfrViewDetallesAlbaranCliente.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean;
begin
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
Result := (Controller as IDetallesAlbaranClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Albaran.Cliente.ID, -1)
else
Result := (Controller as IDetallesAlbaranClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Albaran.Cliente.ID);
end;
procedure TfrViewDetallesAlbaranCliente.AnadirArticulosInterno;
begin
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente, true, -1)
else
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente);
end;
procedure TfrViewDetallesAlbaranCliente.cxGridViewDESCRIPCIONGetPropertiesForEdit(
Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
var AProperties: TcxCustomEditProperties);
begin
inherited;
AProperties := cxRichEdit1.Properties;
end;
function TfrViewDetallesAlbaranCliente.GetAlbaran: IBizAlbaranCliente;
begin
Result := FAlbaran;
end;
procedure TfrViewDetallesAlbaranCliente.RellenarArticulosInterno;
begin
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente, False, -1)
else
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente, False);
end;
procedure TfrViewDetallesAlbaranCliente.SetAlbaran(const Value: IBizAlbaranCliente);
begin
FAlbaran := Value;
end;
end.