114 lines
3.4 KiB
ObjectPascal
114 lines
3.4 KiB
ObjectPascal
{*******************************************************}
|
|
{ }
|
|
{ Administración de puntos de venta }
|
|
{ }
|
|
{ Copyright (C) 2006 Rodax Software S.L. }
|
|
{ }
|
|
{*******************************************************}
|
|
|
|
unit uDataModuleVentasProceso;
|
|
|
|
interface
|
|
|
|
uses {vcl:} SysUtils, Classes, DB, uDataModuleBase,
|
|
{RemObjects:} uDAClientDataModule, uROClient, uROServiceComponent,
|
|
uRORemoteService, uDADataTable, uDAScriptingProvider, uDACDSDataTable,
|
|
uBizControlVentasProceso, uBizVentasProceso, uDARemoteDataAdapter,
|
|
uDADataStreamer, uDABinAdapter;
|
|
|
|
const
|
|
CATEGORIA_VENTAS_PROCESO = 'VENTAPROCESO';
|
|
|
|
type
|
|
TdmVentasEnProceso = class(TDAClientDataModule)
|
|
RemoteService: TRORemoteService;
|
|
tbl_VentasEnProcesoPendientes: TDACDSDataTable;
|
|
tbl_VentasEnProcesoPendientes2: TDACDSDataTable;
|
|
DARemoteDataAdapter: TDARemoteDataAdapter;
|
|
DARemoteDataAdapter2: TDARemoteDataAdapter;
|
|
DABinDataStreamer2: TDABinDataStreamer;
|
|
procedure DAClientDataModuleCreate(Sender: TObject);
|
|
protected
|
|
function GetItems : IBizVentasProceso;
|
|
public
|
|
function GetNameColumns: String;
|
|
function GetControl: IBizControlVentasProceso;
|
|
end;
|
|
|
|
var
|
|
dmVentasEnProceso: TdmVentasEnProceso;
|
|
|
|
implementation
|
|
|
|
{$R *.DFM}
|
|
|
|
uses
|
|
Controls, Forms, uDataTableUtils,
|
|
uDataModuleControles, schVentasEnProcesoClient_Intf, Dialogs, cxControls;
|
|
|
|
procedure TdmVentasEnProceso.DAClientDataModuleCreate(Sender: TObject);
|
|
begin
|
|
RemoteService.Channel := dmBase.Channel;
|
|
RemoteService.Message := dmBase.Message;
|
|
end;
|
|
|
|
function TdmVentasEnProceso.GetControl: IBizControlVentasProceso;
|
|
var
|
|
aDataTable : TDACDSDataTable;
|
|
begin
|
|
aDataTable := dmControles.GetItems(CATEGORIA_VENTAS_PROCESO);
|
|
aDataTable.BusinessRulesID := BIZ_CONTROL_VENTASPROCESO;
|
|
|
|
(aDataTable as IBizControlVentasProceso).Items := GetItems;
|
|
Result := (aDataTable as IBizControlVentasProceso);
|
|
end;
|
|
|
|
function TdmVentasEnProceso.GetItems: IBizVentasProceso;
|
|
var
|
|
dtVentas: TDACDSDataTable;
|
|
begin
|
|
ShowHourglassCursor;
|
|
try
|
|
dtVentas := TDACDSDataTable.Create(NIL);
|
|
CloneDataTable(tbl_VentasEnProcesoPendientes2, dtVentas);
|
|
dtVentas.Fields.AssignFieldCollection(tbl_VentasEnProcesoPendientes.Fields);
|
|
dtVentas.BusinessRulesID := BIZ_VENTASPROCESO;
|
|
|
|
dtVentas.FieldByName(fld_VentasEnProcesoPendientesNUMINF).Visible := False;
|
|
dtVentas.FieldByName(fld_VentasEnProcesoPendientesCLAVE1).Visible := False;
|
|
dtVentas.FieldByName(fld_VentasEnProcesoPendientesCLAVE2).Visible := False;
|
|
dtVentas.FieldByName(fld_VentasEnProcesoPendientesCLAVE3).Visible := False;
|
|
|
|
dtVentas.LoadSchema;
|
|
Result := (dtVentas as IBizVentasProceso);
|
|
finally
|
|
HideHourglassCursor;
|
|
end;
|
|
end;
|
|
|
|
function TdmVentasEnProceso.GetNameColumns: String;
|
|
var
|
|
AList : TStringList;
|
|
i : integer;
|
|
begin
|
|
AList := TStringList.Create;
|
|
try
|
|
for i := 0 to tbl_VentasEnProcesoPendientes.FieldCount - 1 do
|
|
if tbl_VentasEnProcesoPendientes.Fields[i].Visible then
|
|
AList.Add(tbl_VentasEnProcesoPendientes.Fields[i].Name);
|
|
Result := AList.CommaText;
|
|
finally
|
|
FreeAndNil(AList);
|
|
end;
|
|
end;
|
|
|
|
|
|
initialization
|
|
dmVentasEnProceso := TdmVentasEnProceso.Create(nil);
|
|
|
|
finalization
|
|
FreeAndNil(dmVentasEnProceso);
|
|
|
|
end.
|
|
|