git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@158 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
107 lines
3.2 KiB
ObjectPascal
107 lines
3.2 KiB
ObjectPascal
unit uViewAgentes;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, uViewContactos, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
|
cxDataStorage, cxEdit, DB, cxDBData, 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, uDAInterfaces,
|
|
Menus, uCustomView, uViewBase;
|
|
|
|
type
|
|
IViewAgentes = interface(IViewContactos)
|
|
['{0C1EC67F-E9AC-4552-8E1E-BA3888FF6ABA}']
|
|
end;
|
|
|
|
TfrViewAgentes = class(TfrViewContactos, IViewAgentes)
|
|
cxGridLevel1: TcxGridLevel;
|
|
cxGridLevel2: TcxGridLevel;
|
|
cxGridViewFECHA_BAJA: TcxGridDBColumn;
|
|
cxStyleActivos: TcxStyle;
|
|
cxStyleInactivos: TcxStyle;
|
|
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: TcxGridLevel);
|
|
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;
|
|
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
|
|
out AStyle: TcxStyle);
|
|
procedure CustomViewShow(Sender: TObject);
|
|
private
|
|
//Filtros relativos a la vista
|
|
procedure AnadirFiltroSituaciones;
|
|
|
|
public
|
|
procedure AnadirOtrosFiltros; override;
|
|
end;
|
|
|
|
implementation
|
|
{$R *.dfm}
|
|
|
|
uses schContactosClient_Intf;
|
|
|
|
procedure TfrViewAgentes.AnadirFiltroSituaciones;
|
|
var
|
|
FFiltro : TcxFilterCriteriaItemList;
|
|
begin
|
|
FFiltro := AddFilterGrid(fboAnd);
|
|
|
|
case cxGrid.ActiveLevel.Index of
|
|
1 : FFiltro.AddItem(cxGridViewFECHA_BAJA, foEqual, Null, 'ACTIVOS');
|
|
2 : FFiltro.AddItem(cxGridViewFECHA_BAJA, foNotEqual, Null, 'INACTIVOS');
|
|
end;
|
|
end;
|
|
|
|
procedure TfrViewAgentes.AnadirOtrosFiltros;
|
|
begin
|
|
inherited;
|
|
|
|
AnadirFiltroSituaciones;
|
|
|
|
//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 TfrViewAgentes.CustomViewShow(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
cxGridLevel1.Active := True;
|
|
end;
|
|
|
|
procedure TfrViewAgentes.cxGridActiveTabChanged(Sender: TcxCustomGrid;
|
|
ALevel: TcxGridLevel);
|
|
begin
|
|
inherited;
|
|
RefrescarFiltro;
|
|
end;
|
|
|
|
procedure TfrViewAgentes.cxGridViewStylesGetContentStyle(
|
|
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
|
|
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
|
|
var
|
|
IndiceCol: Integer;
|
|
ASituacion: String;
|
|
begin
|
|
inherited;
|
|
{
|
|
if Assigned(ARecord) then
|
|
begin
|
|
IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_AgentesFECHA_BAJA).Index;
|
|
ASituacion := VarToStr(ARecord.DisplayTexts[IndiceCol]);
|
|
if Length(ASituacion) = 0 then
|
|
AStyle.TextColor := cxStyleActivos.TextColor
|
|
else
|
|
AStyle.TextColor := cxStyleInactivos.TextColor;
|
|
end;
|
|
}
|
|
end;
|
|
|
|
end.
|