diff --git a/Database/ACANA.FDB b/Database/ACANA.FDB index d684889b..45a1fcc5 100644 Binary files a/Database/ACANA.FDB and b/Database/ACANA.FDB differ diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj index 3efdabfa..478f4a08 100644 --- a/Source/Base/Base.dproj +++ b/Source/Base/Base.dproj @@ -44,13 +44,6 @@ Package FalseTrueFalseLibreria base de FactuGESFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0 - - - - - - - VCL for the Web Design Package for CodeGear RAD Studio CodeGear WebSnap Components CodeGear SOAP Components @@ -65,53 +58,53 @@ MainSource + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
fConfigurarConexion
TForm diff --git a/Source/Base/Base.res b/Source/Base/Base.res index 8b251f31..1641339f 100644 Binary files a/Source/Base/Base.res and b/Source/Base/Base.res differ diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj index 5bec7c8c..54426f6d 100644 --- a/Source/Cliente/FactuGES.dproj +++ b/Source/Cliente/FactuGES.dproj @@ -53,7 +53,7 @@ Delphi.Personality VCLApplication -FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2300FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.0.0FactuGESFactuGES2.3.0.0 +FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2310FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.1.0FactuGESFactuGES2.3.1.0 diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index b38313a9..ed4a1317 100644 Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ diff --git a/Source/Modulos/Contactos/Controller/uClientesController.pas b/Source/Modulos/Contactos/Controller/uClientesController.pas index 9dc1494f..c33f0a26 100644 --- a/Source/Modulos/Contactos/Controller/uClientesController.pas +++ b/Source/Modulos/Contactos/Controller/uClientesController.pas @@ -57,7 +57,7 @@ uses Forms, Classes, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils, uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController, uIEditorElegirClientes, uEditorGridBase, uDAInterfaces, uFactuGES_App, - Dialogs; + Dialogs, uIntegerListUtils; { TClientesController } @@ -235,70 +235,68 @@ end; procedure TClientesController.Preview(ACliente: IBizCliente; AllItems: Boolean); var AReportController : IEtiquetasContactosReportController; - ListaID: TStringList; + ListaID: TIntegerList; begin AReportController := TEtiquetasContactosReportController.Create; - try - ListaID := TStringList.Create; - try - //Si deseamos previsualizar todos los items del objeto albaran - if AllItems then - begin - with ACliente.DataTable do - begin - First; - while not EOF do - begin - ListaID.Add(IntToStr(ACliente.ID)); - Next; - end; - end; - end - else //Solo previsualizamos el item seleccionado - ListaID.Add(IntToStr(ACliente.ID)); + ListaID := TIntegerList.Create; - AReportController.Preview(ListaID.CommaText); - finally - FreeANDNil(ListaID); - end; + try + //Si deseamos previsualizar todos los items del objeto albaran + if AllItems then + begin + with ACliente.DataTable do + begin + First; + while not EOF do + begin + ListaID.Add(ACliente.ID); + Next; + end; + end; + end + //Solo previsualizamos el item seleccionado + else + ListaID.Add(ACliente.ID); + + AReportController.Preview(ListaID); finally AReportController := NIL; + FreeANDNIL(ListaID); end; end; procedure TClientesController.Print(ACliente: IBizCliente; AllItems: Boolean); var AReportController : IEtiquetasContactosReportController; - ListaID: TStringList; + ListaID: TIntegerList; begin AReportController := TEtiquetasContactosReportController.Create; - try - ListaID := TStringList.Create; - try - //Si deseamos previsualizar todos los items del objeto albaran - if AllItems then - begin - with ACliente.DataTable do - begin - First; - while not EOF do - begin - ListaID.Add(IntToStr(ACliente.ID)); - Next; - end; - end; - end - //Solo previsualizamos el item seleccionado - else - ListaID.Add(IntToStr(ACliente.ID)); + ListaID := TIntegerList.Create; + + try + //Si deseamos previsualizar todos los items del objeto albaran + if AllItems then + begin + with ACliente.DataTable do + begin + First; + while not EOF do + begin + ListaID.Add(ACliente.ID); + Next; + end; + end; + end + //Solo previsualizamos el item seleccionado + else + ListaID.Add(ACliente.ID); + + AReportController.Print(ListaID); - AReportController.Print(ListaID.CommaText); - finally - FreeANDNIL(ListaID); - end; finally AReportController := NIL; + FreeANDNil(ListaID); end; end; diff --git a/Source/Modulos/Contactos/Controller/uEtiquetasContactosReportController.pas b/Source/Modulos/Contactos/Controller/uEtiquetasContactosReportController.pas index 60162232..d5eb76fa 100644 --- a/Source/Modulos/Contactos/Controller/uEtiquetasContactosReportController.pas +++ b/Source/Modulos/Contactos/Controller/uEtiquetasContactosReportController.pas @@ -4,13 +4,13 @@ interface uses Classes, SysUtils, uDADataTable, uIDataModuleEtiquetasContactosReport, - uVendedoresController, uControllerBase; + uVendedoresController, uControllerBase, uIntegerListUtils; type IEtiquetasContactosReportController = interface(IControllerBase) ['{76BB35E3-554E-4D30-8D3E-54E488EF82E2}'] - procedure Preview(const AContactosID : String); - procedure Print(const AContactosID : String); + procedure Preview(const ListaID : TIntegerList); + procedure Print(const ListaID : TIntegerList); end; TEtiquetasContactosReportController = class(TControllerBase, IEtiquetasContactosReportController) @@ -21,8 +21,8 @@ type constructor Create; override; destructor Destroy; override; - procedure Preview(const AContactosID : String); - procedure Print(const AContactosID : String); + procedure Preview(const ListaID : TIntegerList); + procedure Print(const ListaID : TIntegerList); end; @@ -52,30 +52,34 @@ begin inherited; end; -procedure TEtiquetasContactosReportController.Preview(const AContactosID : String); +procedure TEtiquetasContactosReportController.Preview(const ListaID : TIntegerList); var AStream: Binary; AEditor : IEditorEtiquetasContactosPreview; begin AEditor := NIL; - AStream := FDataModule.GetReport(AContactosID); + AStream := FDataModule.GetReport(ListaID); try CreateEditor('EditorEtiquetasContactosPreview', IEditorEtiquetasContactosPreview, AEditor); if Assigned(AEditor) then + begin try + AEditor.Controller := Self; + AEditor.ListaID := ListaID; AEditor.LoadFromStream(AStream); AEditor.Preview; finally AEditor.Release; - AEditor := NIL; end; + end; finally FreeAndNil(AStream); + AEditor := Nil; end; end; -procedure TEtiquetasContactosReportController.Print(const AContactosID : String); +procedure TEtiquetasContactosReportController.Print(const ListaID : TIntegerList); var AStream: Binary; AEditor : IEditorEtiquetasContactosPreview; @@ -83,19 +87,23 @@ begin AEditor := NIL; ShowHourglassCursor; try - AStream := FDataModule.GetReport(AContactosID); + AStream := FDataModule.GetReport(ListaID); try CreateEditor('EditorEtiquetasContactosPreview', IEditorEtiquetasContactosPreview, AEditor); if Assigned(AEditor) then + begin try + AEditor.Controller := Self; + AEditor.ListaID := ListaID; AEditor.LoadFromStream(AStream); AEditor.Print; finally AEditor.Release; - AEditor := Nil; end; + end; finally FreeAndNil(AStream); + AEditor := Nil; end; finally HideHourglassCursor; diff --git a/Source/Modulos/Contactos/Controller/uProveedoresController.pas b/Source/Modulos/Contactos/Controller/uProveedoresController.pas index 4e379a67..a535df83 100644 --- a/Source/Modulos/Contactos/Controller/uProveedoresController.pas +++ b/Source/Modulos/Contactos/Controller/uProveedoresController.pas @@ -51,7 +51,7 @@ uses Classes, SysUtils, cxControls, Dialogs, uDataModuleProveedores, uEditorRegistryUtils, uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController, uIEditorElegirProveedores, Controls, uEditorGridBase, JSDialogs, JSDialog, - uDAInterfaces, uFactuGES_App, Windows; + uDAInterfaces, uFactuGES_App, Windows, uIntegerListUtils; { TProveedoresController } @@ -221,72 +221,69 @@ end; procedure TProveedoresController.Preview(AProveedor: IBizProveedor; AllItems: Boolean); var AReportController : IEtiquetasContactosReportController; - ListaID: TStringList; + ListaID: TIntegerList; begin AReportController := TEtiquetasContactosReportController.Create; - try - ListaID := TStringList.Create; - try - //Si deseamos previsualizar todos los items del objeto albaran - if AllItems then - begin - with AProveedor.DataTable do - begin - First; - while not EOF do - begin - ListaID.Add(IntToStr(AProveedor.ID)); - Next; - end; - end; - end - //Solo previsualizamos el item seleccionado - else - ListaID.Add(IntToStr(AProveedor.ID)); + ListaID := TIntegerList.Create; - AReportController.Preview(ListaID.CommaText); - finally - FreeANDNIL(ListaID); - end; + try + //Si deseamos previsualizar todos los items del objeto albaran + if AllItems then + begin + with AProveedor.DataTable do + begin + First; + while not EOF do + begin + ListaID.Add(AProveedor.ID); + Next; + end; + end; + end + //Solo previsualizamos el item seleccionado + else + ListaID.Add(AProveedor.ID); + + AReportController.Preview(ListaID); finally AReportController := NIL; + FreeANDNil(ListaID); end; end; procedure TProveedoresController.Print(AProveedor: IBizProveedor; AllItems: Boolean); var AReportController : IEtiquetasContactosReportController; - ListaID: TStringList; + ListaID: TIntegerList; begin AReportController := TEtiquetasContactosReportController.Create; - try - ListaID := TStringList.Create; - try - //Si deseamos previsualizar todos los items del objeto albaran - if AllItems then - begin - with AProveedor.DataTable do - begin - First; - while not EOF do - begin - ListaID.Add(IntToStr(AProveedor.ID)); - Next; - end; - end; - end - //Solo previsualizamos el item seleccionado - else - ListaID.Add(IntToStr(AProveedor.ID)); + ListaID := TIntegerList.Create; + + try + //Si deseamos previsualizar todos los items del objeto albaran + if AllItems then + begin + with AProveedor.DataTable do + begin + First; + while not EOF do + begin + ListaID.Add(AProveedor.ID); + Next; + end; + end; + end + //Solo previsualizamos el item seleccionado + else + ListaID.Add(AProveedor.ID); + + AReportController.Print(ListaID); - AReportController.Print(ListaID.CommaText); - finally - FreeANDNIL(ListaID); - end; finally AReportController := NIL; + FreeANDNil(ListaID); end; end; diff --git a/Source/Modulos/Contactos/Data/uDataModuleContactos.pas b/Source/Modulos/Contactos/Data/uDataModuleContactos.pas index 90571452..c918069a 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleContactos.pas +++ b/Source/Modulos/Contactos/Data/uDataModuleContactos.pas @@ -3,7 +3,7 @@ unit uDataModuleContactos; interface uses - SysUtils, Classes, DB, DBClient, + SysUtils, Classes, DB, DBClient, uIntegerListUtils, uDADataTable, uDABINAdapter, uDAScriptingProvider, uDACDSDataTable, uROWinInetHttpChannel, uRORemoteService, uROClient, uROBinMessage, @@ -36,7 +36,7 @@ type function NewDireccion : IBizDireccionesContacto; // Report - function GetReport(const AContactosID: String): Binary; + function GetReport(const ListaID: TIntegerList): Binary; end; implementation @@ -60,9 +60,16 @@ begin // end; -function TDataModuleContactos.GetReport(const AContactosID: String): Binary; +function TDataModuleContactos.GetReport(const ListaID: TIntegerList): Binary; +var + AParam : TIntegerArray; begin - Result := (RORemoteService as IsrvContactos).GenerateEtiquetasReport(AContactosID); + AParam := ListaID.ToIntegerArray; + try + Result := (RORemoteService as IsrvContactos).GenerarInformeEtiquetas(AParam); + finally + FreeANDNIL(AParam); + end; end; function TDataModuleContactos.NewDireccion: IBizDireccionesContacto; diff --git a/Source/Modulos/Contactos/Model/Data/uIDataModuleEtiquetasContactosReport.pas b/Source/Modulos/Contactos/Model/Data/uIDataModuleEtiquetasContactosReport.pas index 6b276848..5bf48d6c 100644 --- a/Source/Modulos/Contactos/Model/Data/uIDataModuleEtiquetasContactosReport.pas +++ b/Source/Modulos/Contactos/Model/Data/uIDataModuleEtiquetasContactosReport.pas @@ -3,12 +3,12 @@ unit uIDataModuleEtiquetasContactosReport; interface uses - SysUtils, Classes, uROTypes; + SysUtils, Classes, uROTypes, uIntegerListUtils; type IDataModuleEtiquetasContactosReport = interface ['{26E68DED-5BD9-4227-B07F-9644BED7AE7B}'] - function GetReport(const AClientesID: String): Binary; + function GetReport(const ListaID: TIntegerList): Binary; end; implementation diff --git a/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.dfm b/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.dfm index 4b740671..b1b9a100 100644 --- a/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.dfm +++ b/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.dfm @@ -56,11 +56,8 @@ object RptEtiquetasContacto: TRptEtiquetasContacto LogChanges = False StreamingOptions = [soDisableEventsWhileStreaming] RemoteFetchEnabled = False - LocalSchema = schReport - LocalDataStreamer = Bin2DataStreamer DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] - LogicalName = 'InformeEtiquetasContacto' IndexDefs = <> Left = 264 Top = 128 diff --git a/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas b/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas index ddb08557..1adea40d 100644 --- a/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas +++ b/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas @@ -7,7 +7,8 @@ uses Dialogs, frxClass, frxDBSet, uDAScriptingProvider, uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, - uDAInterfaces, uDADataStreamer, uDABin2DataStreamer, uDAMemDataTable; + uDAInterfaces, uDADataStreamer, uDABin2DataStreamer, uDAMemDataTable, + FactuGES_Intf; type TRptEtiquetasContacto = class(TDataModule) @@ -29,7 +30,7 @@ type private FConnection: IDAConnection; public - function GenerarInforme(const AID : String): Binary; overload; + function GenerarInforme(const ListaID: TIntegerArray): Binary; overload; end; implementation @@ -56,42 +57,54 @@ begin frxReport.EngineOptions.NewSilentMode := simReThrow; end; -function TRptEtiquetasContacto.GenerarInforme(const AID: String): Binary; +function TRptEtiquetasContacto.GenerarInforme(const ListaID: TIntegerArray): Binary; var + AStream: TMemoryStream; + dsMaster: IDADataset; + i : Integer; + AWhereStr : String; AInforme: Variant; begin Result := Binary.Create; - FConnection.BeginTransaction; + AStream := TMemoryStream.Create; try -// AStream := TMemoryStream.Create; -// dsMaster := schReport.NewDataset(FConnection, ds_InformeContactos, [], [], False); //, ['ID'], ['611, 751']); //AID]); -// dsMaster.Where.AddText(fld_ContactosID + ' in (' + AID + ')'); -// dsMaster.Open; + dsMaster := schReport.NewDataset(FConnection, ds_InformeContactos, [], [], False); //, ['ID'], ['611, 751']); //AID]); + AWhereStr := fld_ContactosID + ' in ('; + for i := 0 to ListaID.Count - 1 do + begin + if i > 0 then + AWhereStr := AWhereStr + ', '; + AWhereStr := AWhereStr + IntToStr(ListaID.Items[i]); + end; -// AStream.Clear; -// Bin2DataStreamer.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1); -// Bin2DataStreamer.ReadDataset(AStream, tbl_Contactos, TRUE, '', TRUE, TRUE); + AWhereStr := AWhereStr + ')'; + dsMaster.Where.AddText(AWhereStr); - tbl_Contactos.Where.AddCondition(fld_ContactosID, cIn, '(' + AID + ')'); - tbl_Contactos.Active := True; + dsMaster.Open; + + AStream.Clear; + Bin2DataStreamer.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1); + Bin2DataStreamer.ReadDataset(AStream, tbl_Contactos, TRUE, '', TRUE, TRUE); AInforme := DarRutaFichero(DarRutaInformes, rptEtiquetasContacto); if VarIsNull(AInforme) then - raise Exception.Create (('Error Servidor: GenerarInforme, no encuentra informe' + rptEtiquetasContacto)); + raise Exception.Create (('Error Servidor: GenerarInforme, no encuentra informe ' + rptEtiquetasContacto)); frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(True); + frxReport.PreviewPages.SaveToStream(Result); finally -// AStream.Free; -// dsMaster := Nil; + AStream.Free; + dsMaster := Nil; FConnection.RollbackTransaction; end; end; + end. diff --git a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas index 7128d2ac..b5d64121 100644 --- a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas +++ b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas @@ -40,7 +40,7 @@ type procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; var aConnectionName: string); public - function GenerateEtiquetasReport(const ContactosID: String): Binary; + function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; function DarTiendaDeUsuario(const ID_Empresa: Integer; const ID_Usuario: Integer): Integer; end; @@ -107,13 +107,13 @@ begin ConnectionName := dmServer.ConnectionName; end; -function TsrvContactos.GenerateEtiquetasReport(const ContactosID: String): Binary; +function TsrvContactos.GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; var AReportGenerator : TRptEtiquetasContacto; begin AReportGenerator := TRptEtiquetasContacto.Create(nil); try - Result := AReportGenerator.GenerarInforme(ContactosID); + Result := AReportGenerator.GenerarInforme(ListaID); finally FreeAndNIL(AReportGenerator); end; diff --git a/Source/Modulos/Contactos/Views/uEditorContactos.dfm b/Source/Modulos/Contactos/Views/uEditorContactos.dfm index b46aee58..357b0213 100644 --- a/Source/Modulos/Contactos/Views/uEditorContactos.dfm +++ b/Source/Modulos/Contactos/Views/uEditorContactos.dfm @@ -10,9 +10,6 @@ inherited fEditorContactos: TfEditorContactos Caption = 'Lista de contactos' end inherited TBXDock: TTBXDock - inherited tbxMain: TTBXToolbar - ExplicitWidth = 543 - end inherited tbxFiltro: TTBXToolbar ExplicitWidth = 269 inherited tbxEditFiltro: TTBXEditItem diff --git a/Source/Servicios/FactuGES.RODL b/Source/Servicios/FactuGES.RODL index b60aa1d3..8d43a756 100644 --- a/Source/Servicios/FactuGES.RODL +++ b/Source/Servicios/FactuGES.RODL @@ -9,11 +9,11 @@ - + - + diff --git a/Source/Servicios/FactuGES_Intf.pas b/Source/Servicios/FactuGES_Intf.pas index ad7dfd33..33f9e9e3 100644 --- a/Source/Servicios/FactuGES_Intf.pas +++ b/Source/Servicios/FactuGES_Intf.pas @@ -204,7 +204,7 @@ type { IsrvContactos } IsrvContactos = interface(IDataAbstractService) ['{28CCDC07-A3A4-4917-89B4-64423DC70C9D}'] - function GenerateEtiquetasReport(const ContactosID: String): Binary; + function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; function DarTiendaDeUsuario(const ID_Empresa: Integer; const ID_Usuario: Integer): Integer; end; @@ -218,7 +218,7 @@ type protected function __GetInterfaceName:string; override; - function GenerateEtiquetasReport(const ContactosID: String): Binary; + function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; function DarTiendaDeUsuario(const ID_Empresa: Integer; const ID_Usuario: Integer): Integer; end; @@ -1261,12 +1261,12 @@ begin result := 'srvContactos'; end; -function TsrvContactos_Proxy.GenerateEtiquetasReport(const ContactosID: String): Binary; +function TsrvContactos_Proxy.GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; begin try result := nil; - __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateEtiquetasReport'); - __Message.Write('ContactosID', TypeInfo(String), ContactosID, []); + __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEtiquetas'); + __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []); __Message.Finalize; __TransportChannel.Dispatch(__Message); diff --git a/Source/Servicios/FactuGES_Invk.pas b/Source/Servicios/FactuGES_Invk.pas index 4bbcfda2..ce7f3009 100644 --- a/Source/Servicios/FactuGES_Invk.pas +++ b/Source/Servicios/FactuGES_Invk.pas @@ -24,7 +24,7 @@ type private protected published - procedure Invoke_GenerateEtiquetasReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); + procedure Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_DarTiendaDeUsuario(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; @@ -259,20 +259,21 @@ uses { TsrvContactos_Invoker } -procedure TsrvContactos_Invoker.Invoke_GenerateEtiquetasReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); -{ function GenerateEtiquetasReport(const ContactosID: String): Binary; } +procedure TsrvContactos_Invoker.Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); +{ function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; } var - ContactosID: String; + ListaID: FactuGES_Intf.TIntegerArray; lResult: Binary; __lObjectDisposer: TROObjectDisposer; begin + ListaID := nil; lResult := nil; try - __Message.Read('ContactosID', TypeInfo(String), ContactosID, []); + __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []); - lResult := (__Instance as IsrvContactos).GenerateEtiquetasReport(ContactosID); + lResult := (__Instance as IsrvContactos).GenerarInformeEtiquetas(ListaID); - __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerateEtiquetasReportResponse'); + __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerarInformeEtiquetasResponse'); __Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Finalize; __Message.UnsetAttributes(__Transport); @@ -280,6 +281,7 @@ begin finally __lObjectDisposer := TROObjectDisposer.Create(__Instance); try + __lObjectDisposer.Add(ListaID); __lObjectDisposer.Add(lResult); finally __lObjectDisposer.Free(); diff --git a/Source/Servicios/RODLFILE.res b/Source/Servicios/RODLFILE.res index c0a575a4..0b6a6197 100644 Binary files a/Source/Servicios/RODLFILE.res and b/Source/Servicios/RODLFILE.res differ diff --git a/Source/Servidor/FactuGES_Server.RES b/Source/Servidor/FactuGES_Server.RES index 4bb8a894..4f739e31 100644 Binary files a/Source/Servidor/FactuGES_Server.RES and b/Source/Servidor/FactuGES_Server.RES differ diff --git a/Source/Servidor/FactuGES_Server.dproj b/Source/Servidor/FactuGES_Server.dproj index 2e949823..3b7495b2 100644 --- a/Source/Servidor/FactuGES_Server.dproj +++ b/Source/Servidor/FactuGES_Server.dproj @@ -1,284 +1,285 @@ - + - - {ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1} - FactuGES_Server.dpr - Debug - AnyCPU - DCC32 - ..\..\Output\Debug\Servidor\FactuGES_Server.exe - - - 7.0 - False - False - 0 - 3 - ..\..\Output\Release\Servidor - RELEASE - - - 7.0 - 3 - ..\..\Output\Debug\Servidor - DEBUG; - True - - - Delphi.Personality - - - FalseTrueFalseTrueFalse2300FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.0.0FactuGES (Servidor)2.3.0.0martes, 10 de marzo de 2009 19:06 - RemObjects Pascal Script - RemObjects SDK 3.0 Integration - FactuGES_Server.dpr - - - - - MainSource - - - - - -
srvEjercicios
- TDataAbstractService -
- - - -
srvEmpresas
- TDARemoteService -
- -
srvProvinciasPoblaciones
- TRORemoteDataModule -
- - - - - - - - - - - -
srvAlbaranesCliente
- TDataAbstractService -
- - - - -
srvAlbaranesProveedor
- TDataAbstractService -
- - - -
srvAlmacenes
- TDARemoteService -
- - - - - - - -
RptComisiones
- TDataModule -
- -
srvComisiones
- TDataAbstractService -
- - - - -
srvContabilidad
- TDataAbstractService -
- - - - - - - -
RptEtiquetasContacto
- TDataModule -
- -
srvContactos
- TDARemoteService -
- - - - -
RptFacturasCliente
- TDataModule -
- -
srvFacturasCliente
- TDataAbstractService -
- - - - -
RptFacturasProveedor
- TDataModule -
- -
srvFacturasProveedor
- TDataAbstractService -
- - - - - - - -
srvGestorDocumentos
- TDataAbstractService -
- -
srvGestorInformes
- TDataAbstractService -
- - - -
srvHistoricoMovimientos
- TDataAbstractService -
- - - -
srvInventario
- TDataAbstractService -
- - - - -
srvPedidosProveedor
- TDataAbstractService -
- - - - -
RptPresupuestosCliente
-
- -
srvPresupuestosCliente
- TDataAbstractService -
- - - - - -
RptRecibosCliente
- TDataModule -
- -
srvRecibosCliente
- TDataAbstractService -
- - - - - -
RptRecibosProveedor
- TDataModule -
- -
srvRecibosProveedor
- TDataAbstractService -
- - - -
srvReferencias
- TDataAbstractService -
- - - - -
srvRemesasCliente
- TDataAbstractService -
- - - - -
srvRemesasProveedor
- TDataAbstractService -
- - - - - - -
srvUnidadesMedida
- TDataAbstractService -
- - - -
srvConfiguracion
- TDataAbstractService -
- -
frConexionBD
- TFrame -
- -
frConfGeneral
- TFrame -
- -
fConfiguracion
- TForm -
- -
FrameConfiguracion
- TFrame -
- -
srvLogin
- TDARemoteService -
- -
fAcercaDe
-
- -
dmServer
- TDataModule -
- -
fServerForm
-
- - - - - - - - -
+ + {ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1} + FactuGES_Server.dpr + Debug + AnyCPU + DCC32 + ..\..\Output\Debug\Servidor\FactuGES_Server.exe + + + 7.0 + False + False + 0 + 3 + ..\..\Output\Release\Servidor + RELEASE + + + 7.0 + 3 + ..\..\Output\Debug\Servidor + DEBUG; + True + + + Delphi.Personality + + +FalseTrueFalseTrueFalse2310FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.1.0FactuGES (Servidor)2.3.1.0miércoles, 11 de marzo de 2009 16:18 + + RemObjects Pascal Script - RemObjects SDK 3.0 Integration + FactuGES_Server.dpr + + + + + MainSource + + + + + +
srvEjercicios
+ TDataAbstractService +
+ + + +
srvEmpresas
+ TDARemoteService +
+ +
srvProvinciasPoblaciones
+ TRORemoteDataModule +
+ + + + + + + + + + + +
srvAlbaranesCliente
+ TDataAbstractService +
+ + + + +
srvAlbaranesProveedor
+ TDataAbstractService +
+ + + +
srvAlmacenes
+ TDARemoteService +
+ + + + + + + +
RptComisiones
+ TDataModule +
+ +
srvComisiones
+ TDataAbstractService +
+ + + + +
srvContabilidad
+ TDataAbstractService +
+ + + + + + + +
RptEtiquetasContacto
+ TDataModule +
+ +
srvContactos
+ TDARemoteService +
+ + + + +
RptFacturasCliente
+ TDataModule +
+ +
srvFacturasCliente
+ TDataAbstractService +
+ + + + +
RptFacturasProveedor
+ TDataModule +
+ +
srvFacturasProveedor
+ TDataAbstractService +
+ + + + + + + +
srvGestorDocumentos
+ TDataAbstractService +
+ +
srvGestorInformes
+ TDataAbstractService +
+ + + +
srvHistoricoMovimientos
+ TDataAbstractService +
+ + + +
srvInventario
+ TDataAbstractService +
+ + + + +
srvPedidosProveedor
+ TDataAbstractService +
+ + + + +
RptPresupuestosCliente
+
+ +
srvPresupuestosCliente
+ TDataAbstractService +
+ + + + + +
RptRecibosCliente
+ TDataModule +
+ +
srvRecibosCliente
+ TDataAbstractService +
+ + + + + +
RptRecibosProveedor
+ TDataModule +
+ +
srvRecibosProveedor
+ TDataAbstractService +
+ + + +
srvReferencias
+ TDataAbstractService +
+ + + + +
srvRemesasCliente
+ TDataAbstractService +
+ + + + +
srvRemesasProveedor
+ TDataAbstractService +
+ + + + + + +
srvUnidadesMedida
+ TDataAbstractService +
+ + + +
srvConfiguracion
+ TDataAbstractService +
+ +
frConexionBD
+ TFrame +
+ +
frConfGeneral
+ TFrame +
+ +
fConfiguracion
+ TForm +
+ +
FrameConfiguracion
+ TFrame +
+ +
srvLogin
+ TDARemoteService +
+ +
fAcercaDe
+
+ +
dmServer
+ TDataModule +
+ +
fServerForm
+
+ + + + + + + + +