This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
LuisLeon_FactuGES/Source/Modulos/Informe ventas por articulo/Model/uBizInfVentasArticulo.pas
2007-07-10 17:32:21 +00:00

97 lines
2.8 KiB
ObjectPascal

unit uBizInfVentasArticulo;
interface
uses
Classes, DB, SysUtils, uROClasses, uDADataTable, uDAInterfaces,
DataAbstract_Intf, uROTypes, schInfVentasArticuloClient_Intf;
const
BIZ_InfVentasArticulo = 'Client.InfVentasArticulo';
type
IBizInfVentasArticulo = interface(IInfVentasArticulo)
['{8E265668-0B6D-4475-9965-15B3EE251B24}']
function GetVisibleColumns: String;
procedure SetVisibleColumns(const Value: String);
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
end;
TBizInfVentasArticulo = class(TInfVentasArticuloDataTableRules, IBizInfVentasArticulo)
private
FVisibleColumns : String;
FDateParams : TDADatasetParamArray;
protected
function GetVisibleColumns: String;
procedure SetVisibleColumns(const Value: String);
procedure OnBeforeDataRequestCall(DataTable: TDADataTable; Request: TDARemoteRequest);
procedure OnBeforeSchemaCall(DataTable: TDADataTable; Request: TDARemoteRequest);
public
constructor Create(aDataTable: TDADataTable); override;
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
destructor Destroy; override;
end;
implementation
{ TBizInfVentasArticulo }
uses
Dialogs;
constructor TBizInfVentasArticulo.Create(aDataTable: TDADataTable);
begin
inherited;
FDateParams := TDADatasetParamArray.Create;
if Assigned(DataTable) then
begin
DataTable.OnBeforeDataRequestCall := OnBeforeDataRequestCall;
DataTable.OnBeforeSchemaCall := OnBeforeSchemaCall;
end;
end;
destructor TBizInfVentasArticulo.Destroy;
begin
FreeAndNIL(FDateParams);
inherited;
end;
function TBizInfVentasArticulo.GetVisibleColumns: String;
begin
// if Length(FVisibleColumns) = 0 then
// FVisibleColumns := dmInfVentasArticulo.GetNameColumns;
Result := FVisibleColumns
end;
procedure TBizInfVentasArticulo.OnBeforeDataRequestCall(
DataTable: TDADataTable; Request: TDARemoteRequest);
begin
Request.ParamByName('Columns').AsString := VisibleColumns;
FDateParams.Clear;
NewDatasetParam(FDateParams, 'FECHAINI', DataTable.ParamByName('FECHAINI').AsDateTime);
NewDatasetParam(FDateParams, 'FECHAFIN', DataTable.ParamByName('FECHAFIN').AsDateTime);
Request.ParamByName('Params').AsComplexType := FDateParams;
end;
procedure TBizInfVentasArticulo.OnBeforeSchemaCall(DataTable: TDADataTable; Request: TDARemoteRequest);
begin
Request.ParamByName('Columns').AsString := VisibleColumns;
end;
procedure TBizInfVentasArticulo.SetVisibleColumns(const Value: String);
begin
// if Length(Value) > 0 then
FVisibleColumns := Value
// else
// FVisibleColumns := dmInfVentasArticulo.GetNameColumns;
end;
initialization
RegisterDataTableRules(BIZ_InfVentasArticulo, TBizInfVentasArticulo);
finalization
end.