unit uViewAsientos; 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, uBizAsientos, ActnList, Menus, cxGridBandedTableView, cxGridDBBandedTableView, JvComponent, JvFormAutoSize, PngImageList, ImgList, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, cxIntlPrintSys3, dxPSCore, dxPScxCommon, dxPScxGridLnk, cxGridCustomPopupMenu, cxGridPopupMenu, uViewFiltroBase, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, dxPgsDlg, uDAInterfaces, cxCalendar, cxImageComboBox, cxTextEdit, cxCurrencyEdit; type IViewAsientos = interface(IViewGrid) ['{5CA170E3-5552-4EF5-A2C0-02E4C9052045}'] function GetAsientos: IBizAsiento; procedure SetAsientos(const Value: IBizAsiento); property Asientos: IBizAsiento read GetAsientos write SetAsientos; end; TfrViewAsientos = class(TfrViewGrid, IViewAsientos) cxGridViewCONCEPTO: TcxGridDBColumn; cxGridViewREF_SUBCUENTA: TcxGridDBColumn; cxGridViewID_ASIENTO: TcxGridDBColumn; PngImageList: TPngImageList; cxGridViewSUBCUENTA: TcxGridDBColumn; cxGridViewDEBE: TcxGridDBColumn; cxGridViewHABER: TcxGridDBColumn; cxGridViewFECHA_ASIENTO: TcxGridDBColumn; cxGridViewORDEN: TcxGridDBColumn; procedure cxGridViewID_ASIENTOCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); protected FAsientos: IBizAsiento; function GetAsientos: IBizAsiento; virtual; procedure SetAsientos(const Value: IBizAsiento); virtual; public property Asientos: IBizAsiento read GetAsientos write SetAsientos; end; implementation {$R *.dfm} { TfrViewAsientos } { ******************************* TfrViewAsientos ******************************* } function TfrViewAsientos.GetAsientos: IBizAsiento; begin Result := FAsientos; end; procedure TfrViewAsientos.SetAsientos(const Value: IBizAsiento); begin FAsientos := Value; if Assigned(FAsientos) then dsDataSource.DataTable := FAsientos.DataTable; end; procedure TfrViewAsientos.cxGridViewID_ASIENTOCustomDrawCell( 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, 0); ADone := True; end; end.