git-svn-id: https://192.168.0.254/svn/Proyectos.AlonsoYSal_FactuGES/trunk@5 9a1d36f3-7752-2d40-8ccb-50eb49674c68
133 lines
4.2 KiB
ObjectPascal
133 lines
4.2 KiB
ObjectPascal
unit uViewFacturasProveedor;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, uViewGrid, uViewPreview, cxStyles, cxCustomData, cxGraphics,
|
|
cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl,
|
|
dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider,
|
|
dxPSFillPatterns, dxPSEdgePatterns, cxImageComboBox, cxTextEdit, ImgList,
|
|
PngImageList, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
|
|
dxPSCore, dxPScxCommon, dxPScxGridLnk, ActnList, uDADataTable,
|
|
cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGrid,
|
|
cxImage, Grids, DBGrids, uBizFacturasProveedor, cxCurrencyEdit,
|
|
uViewFiltroBase;
|
|
|
|
type
|
|
IViewFacturasProveedor = interface(IViewGrid)
|
|
['{82E4A231-1B52-4C90-8E10-D485E8A13C49}']
|
|
procedure SyncFocusedRecord;
|
|
function GetFacturasProveedor: IBizFacturasProveedor;
|
|
procedure SetFacturasProveedor(const Value: IBizFacturasProveedor);
|
|
property FacturasProveedor: IBizFacturasProveedor read GetFacturasProveedor
|
|
write SetFacturasProveedor;
|
|
end;
|
|
|
|
TfrViewFacturasProveedor = class(TfrViewGrid, IViewFacturasProveedor)
|
|
PngImageList: TPngImageList;
|
|
cxGridViewNOMBRE: TcxGridDBColumn;
|
|
cxGridViewFECHAFACTURA: TcxGridDBColumn;
|
|
cxGridViewVENCIMIENTO: TcxGridDBColumn;
|
|
cxGridViewIMPORTETOTAL: TcxGridDBColumn;
|
|
cxGridViewREFERENCIA: TcxGridDBColumn;
|
|
cxGridViewCODIGO: TcxGridDBColumn;
|
|
cxGridViewICONO: TcxGridDBColumn;
|
|
procedure cxGridViewCODIGOCustomDrawCell(
|
|
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
|
|
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
|
|
|
|
private
|
|
//Filtros relativos a la vista
|
|
procedure AnadirFiltroFechas;
|
|
|
|
protected
|
|
FFacturasProveedor: IBizFacturasProveedor;
|
|
function GetFacturasProveedor: IBizFacturasProveedor;
|
|
procedure SetFacturasProveedor(const Value: IBizFacturasProveedor);
|
|
procedure AnadirOtrosFiltros; override;
|
|
|
|
public
|
|
procedure SyncFocusedRecord;
|
|
property FacturasProveedor: IBizFacturasProveedor read GetFacturasProveedor
|
|
write SetFacturasProveedor;
|
|
end;
|
|
|
|
var
|
|
frViewFacturasProveedor: TfrViewFacturasProveedor;
|
|
|
|
implementation
|
|
|
|
uses
|
|
uDataModuleFacturasProveedor;
|
|
|
|
{$R *.dfm}
|
|
|
|
{ TfrViewFacturasProveedor }
|
|
|
|
function TfrViewFacturasProveedor.GetFacturasProveedor: IBizFacturasProveedor;
|
|
begin
|
|
Result := FFacturasProveedor;
|
|
end;
|
|
|
|
procedure TfrViewFacturasProveedor.SetFacturasProveedor(
|
|
const Value: IBizFacturasProveedor);
|
|
begin
|
|
FFacturasProveedor := Value;
|
|
if Assigned(FFacturasProveedor) then
|
|
DADataSource.DataTable := FFacturasProveedor.DataTable;
|
|
end;
|
|
|
|
procedure TfrViewFacturasProveedor.cxGridViewCODIGOCustomDrawCell(
|
|
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
|
|
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
|
|
var
|
|
R : TRect;
|
|
begin
|
|
inherited;
|
|
R := AViewInfo.ContentBounds;
|
|
ACanvas.FillRect(R);
|
|
ACanvas.DrawImage(PngImageList, R.Left, R.Top, 2);
|
|
ADone := True;
|
|
end;
|
|
|
|
procedure TfrViewFacturasProveedor.SyncFocusedRecord;
|
|
begin
|
|
//
|
|
end;
|
|
|
|
procedure TfrViewFacturasProveedor.AnadirFiltroFechas;
|
|
var
|
|
Columna1, Columna2: TcxGridDBColumn;
|
|
Fecha1, Fecha2: Variant;
|
|
FFiltro : TcxFilterCriteriaItemList;
|
|
begin
|
|
Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue;
|
|
Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue;
|
|
|
|
if not VarIsNull(Fecha1)
|
|
and not VarIsNull(Fecha2) then
|
|
begin
|
|
cxGridView.DataController.Filter.Options := [fcoCaseInsensitive, fcoSoftCompare];
|
|
|
|
FFiltro := AddFilterGrid(fboAnd);
|
|
Columna1 := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHAFACTURA');
|
|
FFiltro.AddItem(Columna1, foBetween, varArrayOf([Fecha1, Fecha2]), VarToStr(Fecha1) + ' and ' + VarToStr(Fecha2));
|
|
end;
|
|
end;
|
|
|
|
procedure TfrViewFacturasProveedor.AnadirOtrosFiltros;
|
|
begin
|
|
inherited;
|
|
|
|
AnadirFiltroFechas;
|
|
|
|
//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;
|
|
|
|
end.
|