AbetoDesign_FactuGES2/Source/Modulos/Albaranes de proveedor/Views/uViewElegirArticulosAlbaranesProveedor.pas

109 lines
3.4 KiB
ObjectPascal
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit uViewElegirArticulosAlbaranesProveedor;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewArticulos, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxImageComboBox, cxCurrencyEdit,
cxSpinEdit, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev,
dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, ImgList, PngImageList,
cxGridCustomPopupMenu, cxGridPopupMenu, dxPSCore, dxPScxCommon, dxPScxGrid6Lnk,
uDADataTable, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, uBizContactos,
dxPgsDlg, ActnList, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock,
uViewFiltroBase;
type
IViewElegirArticulosAlbaranesProveedor = interface(IViewArticulos)
['{93C55517-8F37-4EDF-A1B0-95461D0AD807}']
function GetProveedor: IBizProveedor;
procedure SetProveedor(const Value: IBizProveedor);
property Proveedor: IBizProveedor read GetProveedor write SetProveedor;
end;
TfrViewElegirArticulosAlbaranesProveedor = class(TfrViewArticulos, IViewElegirArticulosAlbaranesProveedor)
cxGridLevel1: TcxGridLevel;
cxGridViewID_PROVEEDOR: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid;
ALevel: TcxGridLevel);
procedure CustomViewDestroy(Sender: TObject);
private
FProveedor: IBizProveedor;
function GetProveedor: IBizProveedor;
procedure SetProveedor(const Value: IBizProveedor);
//Filtros relativos a la vista
procedure AnadirFiltroProveedor;
public
property Proveedor: IBizProveedor read GetProveedor write SetProveedor;
procedure AnadirOtrosFiltros; override;
end;
implementation
{$R *.dfm}
{ TfrViewElegirArticulosAlbaranesProveedor }
procedure TfrViewElegirArticulosAlbaranesProveedor.AnadirFiltroProveedor;
var
FFiltro : TcxFilterCriteriaItemList;
begin
FFiltro := AddFilterGrid(fboAnd);
case cxGrid.ActiveLevel.Index of
0 : if Assigned(FProveedor) then
FFiltro.AddItem(cxGridViewID_PROVEEDOR, foEqual, FProveedor.ID, FProveedor.NOMBRE);
1 : if Assigned(FProveedor) then
FFiltro.AddItem(cxGridViewID_PROVEEDOR, foNotEqual, FProveedor.ID, FProveedor.NOMBRE);
end;
end;
procedure TfrViewElegirArticulosAlbaranesProveedor.AnadirOtrosFiltros;
begin
inherited;
AnadirFiltroProveedor;
//Finalmente activamos el filtro si tenemos algo
if cxGridView.DataController.Filter.IsEmpty
then cxGridView.DataController.Filter.Active := False
else cxGridView.DataController.Filter.Active := True;
cxGrid.ActiveLevel.GridView := cxGridView;
end;
procedure TfrViewElegirArticulosAlbaranesProveedor.CustomViewDestroy(
Sender: TObject);
begin
inherited;
FProveedor := Nil;
end;
procedure TfrViewElegirArticulosAlbaranesProveedor.cxGridActiveTabChanged(
Sender: TcxCustomGrid; ALevel: TcxGridLevel);
begin
inherited;
RefrescarFiltro;
end;
function TfrViewElegirArticulosAlbaranesProveedor.GetProveedor: IBizProveedor;
begin
Result := FProveedor;
end;
procedure TfrViewElegirArticulosAlbaranesProveedor.SetProveedor(
const Value: IBizProveedor);
begin
FProveedor := Value;
if Assigned(FProveedor) then
begin
cxGridLevel.Caption := FProveedor.NOMBRE;
RefrescarFiltro;
end;
end;
end.