This repository has been archived on 2024-12-02. You can view files and clone it, but cannot push or open issues or pull requests.
AlonsoYSal_FactuGES/Modulos/Montajes/Cliente/uViewPedidosMontaje.pas
2014-07-14 17:22:53 +00:00

169 lines
5.3 KiB
ObjectPascal

unit uViewPedidosMontaje;
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, ActnList, Menus,
cxGridBandedTableView, cxGridDBBandedTableView, uBizPedidosMontaje, JvComponent,
JvFormAutoSize, PngImageList, ImgList, dxPSGlbl, dxPSUtl, dxPSEngn,
dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
dxPSEdgePatterns, cxIntlPrintSys3, dxPSCore, dxPScxCommon, dxPScxGridLnk,
ComCtrls, ToolWin, cxImageComboBox, uViewFiltroBase;
type
IViewPedidosMontaje = interface(IViewGrid)
['{E6A3B3B7-7663-46D6-9B84-7B689D9B2461}']
function GetCodigoMontaje: Integer;
procedure SetCodigoMontaje(const Value: Integer);
property CodigoMontaje: Integer read GetCodigoMontaje write SetCodigoMontaje;
function GetPedidosMontaje: IBizPedidosMontaje;
procedure SetPedidosMontaje(const Value: IBizPedidosMontaje);
property PedidosMontaje: IBizPedidosMontaje read GetPedidosMontaje write SetPedidosMontaje;
end;
TfrViewPedidosMontaje = class(TfrViewGrid, IViewPedidosMontaje)
PngImageList: TPngImageList;
cxGridViewRecID: TcxGridDBColumn;
cxGridViewCODIGOEMPRESA: TcxGridDBColumn;
cxGridViewCODIGO: TcxGridDBColumn;
cxGridViewFECHAALTA: TcxGridDBColumn;
cxGridViewUSUARIO: TcxGridDBColumn;
cxGridViewFECHACONFIRMACION: TcxGridDBColumn;
cxGridViewFECHAENTREGA: TcxGridDBColumn;
cxGridViewSITUACION: TcxGridDBColumn;
cxGridViewREFERENCIA: TcxGridDBColumn;
cxGridViewNOMBRE: TcxGridDBColumn;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton4: TToolButton;
actAnadir: TAction;
actModificar: TAction;
actEliminar: TAction;
actRecibirPedido: TAction;
ToolButton3: TToolButton;
PngImageList2: TPngImageList;
cxGridViewINCIDENCIASACTIVAS: TcxGridDBColumn;
procedure cxGridViewCODIGOCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure actAnadirExecute(Sender: TObject);
procedure actModificarExecute(Sender: TObject);
procedure actEliminarExecute(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject);
procedure actModificarUpdate(Sender: TObject);
protected
FCodigoMontaje: Integer;
FPedidosMontaje: IBizPedidosMontaje;
function GetCodigoMontaje: Integer;
procedure SetCodigoMontaje(const Value: Integer);
function GetPedidosMontaje: IBizPedidosMontaje;
procedure SetPedidosMontaje(const Value: IBizPedidosMontaje);
public
property PedidosMontaje: IBizPedidosMontaje read GetPedidosMontaje write SetPedidosMontaje;
property CodigoMontaje: Integer read GetCodigoMontaje write SetCodigoMontaje;
end;
var
frViewPedidosMontaje: TfrViewPedidosMontaje;
implementation
uses uDataModuleMontajes;
{$R *.dfm}
{ TfrViewPedidosMontaje }
{
******************************* TfrViewPedidosMontaje *******************************
}
function TfrViewPedidosMontaje.GetPedidosMontaje: IBizPedidosMontaje;
begin
Result := FPedidosMontaje;
end;
procedure TfrViewPedidosMontaje.SetPedidosMontaje(const Value: IBizPedidosMontaje);
begin
FPedidosMontaje := Value;
if Assigned(FPedidosMontaje) then
DADataSource.DataTable := FPedidosMontaje.DataTable;
end;
procedure TfrViewPedidosMontaje.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, 0);
ADone := True;
end;
procedure TfrViewPedidosMontaje.actAnadirExecute(Sender: TObject);
begin
FPedidosMontaje.AnadirPedido(CodigoMontaje);
Self.RefreshGrid;
Self.SyncFocusedRecordsFromDataSet;
end;
procedure TfrViewPedidosMontaje.actModificarExecute(Sender: TObject);
begin
Self.SyncFocusedRecordsFromGrid;
FPedidosMontaje.Show;
Self.RefreshGrid;
Self.SyncFocusedRecordsFromDataSet;
end;
procedure TfrViewPedidosMontaje.actEliminarExecute(Sender: TObject);
begin
Self.SyncFocusedRecordsFromGrid;
try
FPedidosMontaje.Delete;
FPedidosMontaje.DataTable.ApplyUpdates;
finally
Self.RefreshGrid;
Self.SyncFocusedRecordsFromDataSet;
end;
end;
function TfrViewPedidosMontaje.GetCodigoMontaje: Integer;
begin
Result := FCodigoMontaje;
end;
procedure TfrViewPedidosMontaje.SetCodigoMontaje(const Value: Integer);
begin
FCodigoMontaje := Value;
end;
procedure TfrViewPedidosMontaje.actEliminarUpdate(Sender: TObject);
begin
inherited;
if Assigned(DADataSource.DataTable) then
(Sender as TAction).Enabled := (not DADataSource.DataTable.IsEmpty)
else
(Sender as TAction).Enabled := False;
end;
procedure TfrViewPedidosMontaje.actModificarUpdate(Sender: TObject);
begin
inherited;
if Assigned(DADataSource.DataTable) then
(Sender as TAction).Enabled := (not DADataSource.DataTable.IsEmpty)
else
(Sender as TAction).Enabled := False;
end;
end.