Varela_PuntosVenta/Source/Modulos/VentasTerminadas/Cliente/uViewControlVentasTerminadas.pas

149 lines
4.6 KiB
ObjectPascal
Raw Normal View History

unit uViewControlVentasTerminadas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewControlBase, ActnList, ImgList, PngImageList, uViewGrid,
uViewControlGrid, uViewSumarios, TBXDkPanels, StdCtrls,
uViewAgrupaciones, uCustomView, uViewBase, uViewColumnas, ComCtrls,
TB2Dock, uViewParametrosControlGrid, uBizControlesBase, cxStyles,
cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB,
cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
cxTextEdit, uViewFiltros,
uViewControGridlVentasTerminadas, uViewPeriodoFechas;
type
IViewControlVentasTerminadas = interface(IViewControlBase)
['{B8B9105B-E833-4E7D-BA36-EB9A7EBDCE69}']
end;
TfrViewControlVentasTerminadas = class(TfrViewControlBase, IViewControlVentasTerminadas)
frViewPeriodoFechas1: TfrViewPeriodoFechas;
actPeriodoFechas: TAction;
frViewControlGridVentasTerminadas1: TfrViewControlGridVentasTerminadas;
procedure actRefrescarExecute(Sender: TObject);
procedure actPeriodoFechasExecute(Sender: TObject);
protected
FModificado : Boolean;
procedure OnViewControlGridChanged(Sender : TObject);
procedure OnFilterChanged(Sender : TObject);
procedure ActivarTarea(const ATarea: Integer); override;
public
constructor Create(AOwner: TComponent); override;
procedure Refresh; override;
end;
implementation
uses
uDataModuleVentasTerminadas, uBizControlVentasTerminadas, uBizVentasTerminadas;
const
PERIODO = 0;
{$R *.dfm}
{ TfrViewControlVentasTerminadas }
constructor TfrViewControlVentasTerminadas.Create(AOwner: TComponent);
begin
inherited;
frViewControlGridVentasTerminadas1.OnViewChanged := OnViewControlGridChanged;
frViewControlGridVentasTerminadas1.OnFilterChanged := OnFilterChanged;
frViewColumnas1.ViewControlGrid := frViewControlGridVentasTerminadas1;
frViewAgrupaciones1.ViewControlGrid := frViewControlGridVentasTerminadas1;
frViewSumarios1.ViewControlGrid := frViewControlGridVentasTerminadas1;
frViewFiltros1.ViewControlGrid := frViewControlGridVentasTerminadas1;
pcParametros.ActivePage := TabSheet5;
end;
procedure TfrViewControlVentasTerminadas.Refresh;
var
AColumns : TStringList;
begin
inherited;
ShowHourglassCursor;
actRefrescar.Enabled := False;
frViewControlGridVentasTerminadas1.OnViewChanged := nil;
frViewControlGridVentasTerminadas1.OnFilterChanged := nil;
try
// Calcular las columnas a pedir al servidor
AColumns := frViewColumnas1.GetCheckedColumns;
AColumns.Duplicates := dupIgnore;
AColumns.AddStrings(frViewAgrupaciones1.GetAgrupaciones);
(Control as IBizControlVentasTerminadas).Items.VisibleColumns := AColumns.CommaText;
with (Control as IBizControlVentasTerminadas).Items.DataTable do
begin
DisableControls;
try
Active := False;
LoadSchema;
ParamByName('FECHAINI').AsDateTime := frViewPeriodoFechas1.FechaInicial;
ParamByName('FECHAFIN').AsDateTime := frViewPeriodoFechas1.FechaFinal;
Active := True;
frViewColumnas1.Execute;
frViewAgrupaciones1.Execute;
frViewSumarios1.Refresh;
frViewFiltros1.Refresh;
pnlTareas.Visible := True;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
finally
EnableControls;
frViewControlGridVentasTerminadas1.Refresh;
frViewControlGridVentasTerminadas1.ExpandirTodo;
frViewControlGridVentasTerminadas1.GotoFirst;
end;
end;
finally
FreeAndNil(AColumns);
frViewControlGridVentasTerminadas1.OnViewChanged := OnViewControlGridChanged;
frViewControlGridVentasTerminadas1.OnFilterChanged := OnFilterChanged;
actRefrescar.Enabled := True;
HideHourglassCursor;
end;
end;
procedure TfrViewControlVentasTerminadas.actRefrescarExecute(Sender: TObject);
begin
inherited;
Refresh;
end;
procedure TfrViewControlVentasTerminadas.OnViewControlGridChanged(
Sender: TObject);
begin
if Assigned(Self.OnViewChanged) then
Self.OnViewChanged(Self);
end;
procedure TfrViewControlVentasTerminadas.OnFilterChanged(Sender: TObject);
begin
frViewFiltros1.Refresh;
end;
procedure TfrViewControlVentasTerminadas.actPeriodoFechasExecute(
Sender: TObject);
begin
inherited;
ActivarTarea(PERIODO);
end;
procedure TfrViewControlVentasTerminadas.ActivarTarea(
const ATarea: Integer);
begin
inherited;
case ATarea of
PERIODO : pcParametros.ActivePage := TabSheet5;
end;
end;
end.