AbetoDesign_FactuGES2/Source/Modulos/Facturas de proveedor/Views/uViewElegirArticulosFacturasProveedor.pas

105 lines
3.3 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 uViewElegirArticulosFacturasProveedor;
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, dxPgsDlg,
ActnList, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, uViewFiltroBase,
uBizContactos, uDAInterfaces, uCustomView, uViewBase;
type
IViewElegirArticulosFacturasProveedor = interface(IViewArticulos)
['{8F2E6451-0A4E-4DF1-908A-62BB5785A150}']
function GetProveedor: IBizProveedor;
procedure SetProveedor(const Value: IBizProveedor);
property Proveedor: IBizProveedor read GetProveedor write SetProveedor;
end;
TfrViewElegirArticulosFacturasProveedor = class(TfrViewArticulos, IViewElegirArticulosFacturasProveedor)
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}
procedure TfrViewElegirArticulosFacturasProveedor.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);
3 : if Assigned(FProveedor) then
FFiltro.AddItem(cxGridViewID_PROVEEDOR, foNotEqual, FProveedor.ID, FProveedor.NOMBRE);
end;
end;
procedure TfrViewElegirArticulosFacturasProveedor.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 TfrViewElegirArticulosFacturasProveedor.CustomViewDestroy(Sender: TObject);
begin
FProveedor := Nil;
inherited;
end;
procedure TfrViewElegirArticulosFacturasProveedor.cxGridActiveTabChanged(
Sender: TcxCustomGrid; ALevel: TcxGridLevel);
begin
inherited;
RefrescarFiltro;
end;
function TfrViewElegirArticulosFacturasProveedor.GetProveedor: IBizProveedor;
begin
Result := FProveedor;
end;
procedure TfrViewElegirArticulosFacturasProveedor.SetProveedor(
const Value: IBizProveedor);
begin
FProveedor := Value;
if Assigned(FProveedor) then
begin
cxGridLevel.Caption := FProveedor.NOMBRE;
RefrescarFiltro;
end;
end;
end.