2007-09-09 10:56:47 +00:00
|
|
|
unit uDataModuleReferenciaGenerica;
|
|
|
|
|
|
|
|
|
|
interface
|
|
|
|
|
|
|
|
|
|
uses {vcl:} SysUtils, Classes, DB, DBClient,
|
|
|
|
|
{RemObjects:} uDAClientDataModule, uDADataTable, uDAScriptingProvider,
|
|
|
|
|
uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService,
|
2008-04-15 09:28:58 +00:00
|
|
|
uROClient, uROBinMessage, uROWinInetHttpChannel, uDMBase,
|
2007-09-09 10:56:47 +00:00
|
|
|
uBizReferenciaGenerica, uDARemoteDataAdapter, uDAInterfaces, uDADataStreamer;
|
|
|
|
|
|
|
|
|
|
type
|
|
|
|
|
TdmReferenciaGenerica = class(TDAClientDataModule)
|
|
|
|
|
RORemoteService: TRORemoteService;
|
|
|
|
|
ds_ReferenciaGenerica: TDADataSource;
|
|
|
|
|
tbl_ReferenciaGenerica: TDACDSDataTable;
|
2008-04-16 08:48:53 +00:00
|
|
|
DARemoteDataAdapter1: TDARemoteDataAdapter;
|
2007-09-09 10:56:47 +00:00
|
|
|
procedure DAClientDataModuleCreate(Sender: TObject);
|
|
|
|
|
private
|
|
|
|
|
{ Private declarations }
|
|
|
|
|
public
|
|
|
|
|
procedure Print(const Centro: string; const Vendedor : String; const Estado : String; const AFiltro : string = '');
|
|
|
|
|
procedure Preview(const Centro: string; const Vendedor : String; const Estado : String; const AFiltro : string = '');
|
|
|
|
|
function GetItems : IBizReferenciaGenerica;
|
|
|
|
|
function GetProducto(const Codigo: String; const Talla: String;
|
|
|
|
|
const Color: String; out CodigoBarras: String; out Descripcion: String): Boolean;
|
|
|
|
|
function GetSelectedItems(const AItems : IBizReferenciaGenerica): IBizReferenciaGenerica;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
var
|
|
|
|
|
dmReferenciaGenerica: TdmReferenciaGenerica;
|
|
|
|
|
|
|
|
|
|
implementation
|
|
|
|
|
|
|
|
|
|
{$R *.DFM}
|
|
|
|
|
|
|
|
|
|
uses
|
|
|
|
|
Forms, Windows, Controls, VARELA_Intf, uEditorPreview,
|
|
|
|
|
uDataTableUtils, uROTypes, cxControls;
|
|
|
|
|
|
|
|
|
|
procedure TdmReferenciaGenerica.DAClientDataModuleCreate(Sender: TObject);
|
|
|
|
|
begin
|
|
|
|
|
RORemoteService.Channel := dmBase.Channel;
|
|
|
|
|
RORemoteService.Message := dmBase.Message;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function TdmReferenciaGenerica.GetItems: IBizReferenciaGenerica;
|
|
|
|
|
var
|
|
|
|
|
dtLista: TDACDSDataTable;
|
|
|
|
|
begin
|
|
|
|
|
ShowHourglassCursor;
|
|
|
|
|
try
|
|
|
|
|
dtLista := TDACDSDataTable.Create(NIL);
|
|
|
|
|
CloneDataTable(tbl_ReferenciaGenerica, dtLista);
|
|
|
|
|
dtLista.BusinessRulesID := BIZ_REFERENCIAGENERICA;
|
|
|
|
|
Result := (dtLista as IBizReferenciaGenerica);
|
|
|
|
|
finally
|
|
|
|
|
HideHourglassCursor;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function TdmReferenciaGenerica.GetProducto(const Codigo, Talla,
|
|
|
|
|
Color: String; out CodigoBarras, Descripcion: String): Boolean;
|
|
|
|
|
begin
|
|
|
|
|
Result := (RORemoteService as IsrvReferenciaGenerica).GetProducto(Codigo,
|
|
|
|
|
Talla, Color, CodigoBarras, Descripcion);
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function TdmReferenciaGenerica.GetSelectedItems(
|
|
|
|
|
const AItems: IBizReferenciaGenerica): IBizReferenciaGenerica;
|
|
|
|
|
var
|
|
|
|
|
dtLista : TDACDSDataTable;
|
|
|
|
|
ATarget : TDADataTable;
|
|
|
|
|
begin
|
|
|
|
|
ShowHourglassCursor;
|
|
|
|
|
try
|
|
|
|
|
dtLista := TDACDSDataTable.Create(NIL);
|
|
|
|
|
CloneDataTable(tbl_ReferenciaGenerica, dtLista, False);
|
|
|
|
|
CopyDataTable(AItems.DataTable, dtLista, True);
|
|
|
|
|
dtLista.BusinessRulesID := BIZ_REFERENCIAGENERICA;
|
|
|
|
|
dtLista.LogChanges := True; // Para guardar los cambios
|
|
|
|
|
dtLista.RemoteFetchEnabled := True; // Para guardar los cambios
|
|
|
|
|
Result := (dtLista as IBizReferenciaGenerica);
|
|
|
|
|
finally
|
|
|
|
|
HideHourglassCursor;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure TdmReferenciaGenerica.Preview(const Centro, Vendedor: String; const Estado : String;
|
|
|
|
|
const AFiltro : String);
|
|
|
|
|
var
|
|
|
|
|
AStream: TROBinaryMemoryStream;
|
|
|
|
|
AEditorPreview : TfEditorPreview;
|
|
|
|
|
begin
|
|
|
|
|
AEditorPreview := TfEditorPreview.Create(Application);
|
|
|
|
|
try
|
|
|
|
|
ShowHourglassCursor;
|
|
|
|
|
try
|
|
|
|
|
AStream := (RORemoteService as IsrvReferenciaGenerica).GenerateReport(Centro, Vendedor, Estado, AFiltro);
|
|
|
|
|
AEditorPreview.Report.PreviewPages.LoadFromStream(AStream);
|
|
|
|
|
finally
|
|
|
|
|
HideHourglassCursor;
|
|
|
|
|
end;
|
|
|
|
|
AEditorPreview.ShowModal;
|
|
|
|
|
finally
|
|
|
|
|
AEditorPreview.Release;
|
|
|
|
|
AStream.Free;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure TdmReferenciaGenerica.Print(const Centro, Vendedor: String; const Estado : String;
|
|
|
|
|
const AFiltro : String);
|
|
|
|
|
var
|
|
|
|
|
AStream: TROBinaryMemoryStream;
|
|
|
|
|
AEditorPreview : TfEditorPreview;
|
|
|
|
|
begin
|
|
|
|
|
AEditorPreview := TfEditorPreview.Create(Application);
|
|
|
|
|
try
|
|
|
|
|
ShowHourglassCursor;
|
|
|
|
|
try
|
|
|
|
|
AStream := (RORemoteService as IsrvReferenciaGenerica).GenerateReport(Centro, Vendedor, Estado, AFiltro);
|
|
|
|
|
AEditorPreview.Report.PreviewPages.LoadFromStream(AStream);
|
|
|
|
|
finally
|
|
|
|
|
HideHourglassCursor;
|
|
|
|
|
end;
|
|
|
|
|
AEditorPreview.Print;
|
|
|
|
|
finally
|
|
|
|
|
AEditorPreview.Release;
|
|
|
|
|
AStream.Free;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
initialization
|
|
|
|
|
dmReferenciaGenerica := TdmReferenciaGenerica.Create(nil);
|
|
|
|
|
|
|
|
|
|
finalization
|
|
|
|
|
FreeAndNil(dmReferenciaGenerica);
|
|
|
|
|
|
|
|
|
|
end.
|