unit uViewSubCuentas; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, uDADataTable, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, uBizSubCuentas, ActnList, Menus, cxGridBandedTableView, cxGridDBBandedTableView, JvComponent, JvFormAutoSize, PngImageList, ImgList, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGrid6Lnk, cxGridCustomPopupMenu, cxGridPopupMenu, uViewFiltroBase, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, dxPgsDlg, uDAInterfaces, cxCalendar, cxImageComboBox, cxTextEdit, cxCurrencyEdit, uCustomView, uViewBase; type IViewSubCuentas = interface(IViewGrid) ['{E6798DF7-011C-40EC-B368-160C48697445}'] function GetSubCuentas: IBizSubCuenta; procedure SetSubCuentas(const Value: IBizSubCuenta); property SubCuentas: IBizSubCuenta read GetSubCuentas write SetSubCuentas; end; TfrViewSubCuentas = class(TfrViewGrid, IViewSubCuentas) cxGridViewDESCRIPCION: TcxGridDBColumn; cxGridViewREF_SUBCUENTA: TcxGridDBColumn; cxGridViewID: TcxGridDBColumn; PngImageList: TPngImageList; cxGridViewCUENTA: TcxGridDBColumn; cxGridViewDEBE: TcxGridDBColumn; cxGridViewHABER: TcxGridDBColumn; cxGridViewSALDO: TcxGridDBColumn; procedure cxGridViewIDCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); protected FSubCuentas: IBizSubCuenta; function GetSubCuentas: IBizSubCuenta; virtual; procedure SetSubCuentas(const Value: IBizSubCuenta); virtual; public property SubCuentas: IBizSubCuenta read GetSubCuentas write SetSubCuentas; end; implementation {$R *.dfm} { TfrViewSubCuentas } { ******************************* TfrViewSubCuentas ******************************* } function TfrViewSubCuentas.GetSubCuentas: IBizSubCuenta; begin Result := FSubCuentas; end; procedure TfrViewSubCuentas.SetSubCuentas(const Value: IBizSubCuenta); begin FSubCuentas := Value; if Assigned(FSubCuentas) then dsDataSource.DataTable := FSubCuentas.DataTable; end; procedure TfrViewSubCuentas.cxGridViewIDCustomDrawCell( 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, 1); ADone := True; end; end.