unit FactuGES_Invk;

{----------------------------------------------------------------------------}
{ This unit was automatically generated by the RemObjects SDK after reading  }
{ the RODL file associated with this project .                               }
{                                                                            }
{ Do not modify this unit manually, or your changes will be lost when this   }
{ unit is regenerated the next time you compile the project.                 }
{----------------------------------------------------------------------------}

{$I RemObjects.inc}

interface

uses
  {vcl:} Classes,
  {RemObjects:} uROXMLIntf, uROServer, uROServerIntf, uROTypes, uROClientIntf,
  {Used RODL Intf's:} DataAbstract4_Intf,
  {Used RODL Invk's:} DataAbstract4_Invk,
  {Generated:} FactuGES_Intf;

type
  TsrvContactos_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListaDatosContacto(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;

  TsrvLogin_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_Login2(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_Login(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_Logout(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_Ping(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvInventario_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
  end;

  TsrvHistoricoMovimientos_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
  end;

  TsrvEmpresas_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_DarTiendaUsuario(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_DarListaFormasPago(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_DarListaTiposIVA(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvConfiguracion_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_darValor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_guardarValor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvFamilias_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
  end;

  TsrvFormasPago_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
  end;

  TsrvTiposIVA_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
  end;

  TsrvUsuarios_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_Dummy(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvAlmacenes_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
  end;

  TsrvArticulos_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_EliminarImagen(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_AnadirImagen(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvRecibosCliente_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvRecibosProveedor_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvRemesasCliente_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvRemesasProveedor_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvFacturasCliente_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvFacturasProveedor_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvPresupuestosCliente_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvPedidosProveedor_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvAlbaranesCliente_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerarInforme(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);
  end;

  TsrvAlbaranesProveedor_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvEjercicios_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerarPGC(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_darEjercicioActivo(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_CerrarEjercicio(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvReferencias_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_DarNuevaReferencia(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_IncrementarValorReferencia(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvContabilidad_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_TieneCuentaAsociada(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_AnadirSubCuentaCliente(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_AnadirSubCuentaProveedor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_DarNumOrdenAsiento(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_PuntearAsiento(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_PuntearSubcuenta(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvUnidadesMedida_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
  end;

  TsrvComisiones_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvProvinciasPoblaciones_Invoker = class(TROInvoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_DarListaProvincias(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_DarListaPoblaciones(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvGestorDocumentos_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_DarListaFicheros(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_DescargarFichero(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_SubirFichero(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_EliminarFichero(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_EliminarID(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvGestorInformes_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerarInformeIVAClientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeIVAProveedores(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoFacturasCli(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoFacturasProv(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoFacturasCliPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoFacturasProvPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoRecibosCliente(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoRecibosProveedor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoRecibosCliPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoRecibosProvPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeListadoPresupuestos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

  TsrvContratosCliente_Invoker = class(TDataAbstractService_Invoker)
  private
  protected
  public
    constructor Create; override;
  published
    procedure Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
    procedure Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
  end;

implementation

uses
  {RemObjects:} uRORes, uROClient;

{ TsrvContactos_Invoker }

constructor TsrvContactos_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvContactos_Invoker.Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);

    lResult := (__Instance as IsrvContactos).GenerarInformeEtiquetas(ListaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerarInformeEtiquetasResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvContactos_Invoker.Invoke_GenerarInformeListaDatosContacto(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListaDatosContacto(const ListaID: TIntegerArray): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);

    lResult := (__Instance as IsrvContactos).GenerarInformeListaDatosContacto(ListaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerarInformeListaDatosContactoResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvContactos_Invoker.Invoke_DarTiendaDeUsuario(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarTiendaDeUsuario(const ID_Empresa: Integer; const ID_Usuario: Integer): Integer; }
var
  ID_Empresa: Integer;
  ID_Usuario: Integer;
  lResult: Integer;
begin
  try
    __Message.Read('ID_Empresa', TypeInfo(Integer), ID_Empresa, []);
    __Message.Read('ID_Usuario', TypeInfo(Integer), ID_Usuario, []);

    lResult := (__Instance as IsrvContactos).DarTiendaDeUsuario(ID_Empresa, ID_Usuario);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'DarTiendaDeUsuarioResponse');
    __Message.Write('Result', TypeInfo(Integer), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

{ TsrvLogin_Invoker }

constructor TsrvLogin_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvLogin_Invoker.Invoke_Login2(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function Login2(const User: AnsiString; const Password: AnsiString; out LoginInfo: TRdxLoginInfo): Boolean; }
var
  User: AnsiString;
  Password: AnsiString;
  LoginInfo: FactuGES_Intf.TRdxLoginInfo;
  lResult: Boolean;
  __lObjectDisposer: TROObjectDisposer;
begin
  LoginInfo := nil;
  try
    __Message.Read('User', TypeInfo(AnsiString), User, []);
    __Message.Read('Password', TypeInfo(AnsiString), Password, []);

    lResult := (__Instance as IsrvLogin).Login2(User, Password, LoginInfo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvLogin', 'Login2Response');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Write('LoginInfo', TypeInfo(FactuGES_Intf.TRdxLoginInfo), LoginInfo, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(LoginInfo);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvLogin_Invoker.Invoke_Login(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function Login(const User: AnsiString; const Password: AnsiString): Boolean; }
var
  User: AnsiString;
  Password: AnsiString;
  lResult: Boolean;
begin
  try
    __Message.Read('User', TypeInfo(AnsiString), User, []);
    __Message.Read('Password', TypeInfo(AnsiString), Password, []);

    lResult := (__Instance as IsrvLogin).Login(User, Password);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvLogin', 'LoginResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvLogin_Invoker.Invoke_Logout(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure Logout; }
begin
  try
    (__Instance as IsrvLogin).Logout;

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvLogin', 'LogoutResponse');
    __Message.Finalize;

    __oResponseOptions := [roNoResponse];

  finally
  end;
end;

procedure TsrvLogin_Invoker.Invoke_Ping(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function Ping: Boolean; }
var
  lResult: Boolean;
begin
  try
    lResult := (__Instance as IsrvLogin).Ping;

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvLogin', 'PingResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

{ TsrvInventario_Invoker }

constructor TsrvInventario_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

{ TsrvHistoricoMovimientos_Invoker }

constructor TsrvHistoricoMovimientos_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

{ TsrvEmpresas_Invoker }

constructor TsrvEmpresas_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvEmpresas_Invoker.Invoke_DarTiendaUsuario(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarTiendaUsuario(const ID_EMPRESA: Integer; const ID_USUARIO: Integer): Integer; }
var
  ID_EMPRESA: Integer;
  ID_USUARIO: Integer;
  lResult: Integer;
begin
  try
    __Message.Read('ID_EMPRESA', TypeInfo(Integer), ID_EMPRESA, []);
    __Message.Read('ID_USUARIO', TypeInfo(Integer), ID_USUARIO, []);

    lResult := (__Instance as IsrvEmpresas).DarTiendaUsuario(ID_EMPRESA, ID_USUARIO);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvEmpresas', 'DarTiendaUsuarioResponse');
    __Message.Write('Result', TypeInfo(Integer), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvEmpresas_Invoker.Invoke_DarListaFormasPago(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaFormasPago: Binary; }
var
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    lResult := (__Instance as IsrvEmpresas).DarListaFormasPago;

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvEmpresas', 'DarListaFormasPagoResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvEmpresas_Invoker.Invoke_DarListaTiposIVA(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaTiposIVA: Binary; }
var
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    lResult := (__Instance as IsrvEmpresas).DarListaTiposIVA;

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvEmpresas', 'DarListaTiposIVAResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvConfiguracion_Invoker }

constructor TsrvConfiguracion_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvConfiguracion_Invoker.Invoke_darValor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function darValor(const CODIGO: AnsiString; const ValorPorDefecto: AnsiString): AnsiString; }
var
  CODIGO: AnsiString;
  ValorPorDefecto: AnsiString;
  lResult: AnsiString;
begin
  try
    __Message.Read('CODIGO', TypeInfo(AnsiString), CODIGO, []);
    __Message.Read('ValorPorDefecto', TypeInfo(AnsiString), ValorPorDefecto, []);

    lResult := (__Instance as IsrvConfiguracion).darValor(CODIGO, ValorPorDefecto);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvConfiguracion', 'darValorResponse');
    __Message.Write('Result', TypeInfo(AnsiString), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvConfiguracion_Invoker.Invoke_guardarValor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure guardarValor(const CODIGO: AnsiString; const Valor: AnsiString); }
var
  CODIGO: AnsiString;
  Valor: AnsiString;
begin
  try
    __Message.Read('CODIGO', TypeInfo(AnsiString), CODIGO, []);
    __Message.Read('Valor', TypeInfo(AnsiString), Valor, []);

    (__Instance as IsrvConfiguracion).guardarValor(CODIGO, Valor);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvConfiguracion', 'guardarValorResponse');
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

    __oResponseOptions := [roNoResponse];

  finally
  end;
end;

{ TsrvFamilias_Invoker }

constructor TsrvFamilias_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

{ TsrvFormasPago_Invoker }

constructor TsrvFormasPago_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

{ TsrvTiposIVA_Invoker }

constructor TsrvTiposIVA_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

{ TsrvUsuarios_Invoker }

constructor TsrvUsuarios_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvUsuarios_Invoker.Invoke_Dummy(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure Dummy; }
begin
  try
    (__Instance as IsrvUsuarios).Dummy;

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvUsuarios', 'DummyResponse');
    __Message.Finalize;

    __oResponseOptions := [roNoResponse];

  finally
  end;
end;

{ TsrvAlmacenes_Invoker }

constructor TsrvAlmacenes_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

{ TsrvArticulos_Invoker }

constructor TsrvArticulos_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvArticulos_Invoker.Invoke_EliminarImagen(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function EliminarImagen(const ID_ARTICULO: Integer): Boolean; }
var
  ID_ARTICULO: Integer;
  lResult: Boolean;
begin
  try
    __Message.Read('ID_ARTICULO', TypeInfo(Integer), ID_ARTICULO, []);

    lResult := (__Instance as IsrvArticulos).EliminarImagen(ID_ARTICULO);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvArticulos', 'EliminarImagenResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvArticulos_Invoker.Invoke_AnadirImagen(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function AnadirImagen(const ID_ARTICULO: Integer; const Imagen: Binary): Boolean; }
var
  ID_ARTICULO: Integer;
  Imagen: Binary;
  lResult: Boolean;
  __lObjectDisposer: TROObjectDisposer;
begin
  Imagen := nil;
  try
    __Message.Read('ID_ARTICULO', TypeInfo(Integer), ID_ARTICULO, []);
    __Message.Read('Imagen', TypeInfo(Binary), Imagen, []);

    lResult := (__Instance as IsrvArticulos).AnadirImagen(ID_ARTICULO, Imagen);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvArticulos', 'AnadirImagenResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(Imagen);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvRecibosCliente_Invoker }

constructor TsrvRecibosCliente_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvRecibosCliente_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ListaID: TIntegerArray): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);

    lResult := (__Instance as IsrvRecibosCliente).GenerateReport(ListaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRecibosCliente', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvRecibosProveedor_Invoker }

constructor TsrvRecibosProveedor_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvRecibosProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: Integer): Binary; }
var
  ID: Integer;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ID', TypeInfo(Integer), ID, []);

    lResult := (__Instance as IsrvRecibosProveedor).GenerateReport(ID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRecibosProveedor', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvRemesasCliente_Invoker }

constructor TsrvRemesasCliente_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvRemesasCliente_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: AnsiString): Binary; }
var
  ID: AnsiString;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ID', TypeInfo(AnsiString), ID, []);

    lResult := (__Instance as IsrvRemesasCliente).GenerateReport(ID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRemesasCliente', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvRemesasProveedor_Invoker }

constructor TsrvRemesasProveedor_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvRemesasProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: AnsiString): Binary; }
var
  ID: AnsiString;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ID', TypeInfo(AnsiString), ID, []);

    lResult := (__Instance as IsrvRemesasProveedor).GenerateReport(ID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRemesasProveedor', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvFacturasCliente_Invoker }

constructor TsrvFacturasCliente_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvFacturasCliente_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const FacturaID: TIntegerArray; const VerDatosCliente: Boolean): Binary; }
var
  FacturaID: FactuGES_Intf.TIntegerArray;
  VerDatosCliente: Boolean;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  FacturaID := nil;
  lResult := nil;
  try
    __Message.Read('FacturaID', TypeInfo(FactuGES_Intf.TIntegerArray), FacturaID, []);
    __Message.Read('VerDatosCliente', TypeInfo(Boolean), VerDatosCliente, []);

    lResult := (__Instance as IsrvFacturasCliente).GenerateReport(FacturaID, VerDatosCliente);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(FacturaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvFacturasCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerDatosCliente: Boolean; const Usuario: AnsiString; const Firmado: Boolean): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  VerDatosCliente: Boolean;
  Usuario: AnsiString;
  Firmado: Boolean;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
    __Message.Read('VerDatosCliente', TypeInfo(Boolean), VerDatosCliente, []);
    __Message.Read('Usuario', TypeInfo(AnsiString), Usuario, []);
    __Message.Read('Firmado', TypeInfo(Boolean), Firmado, []);

    lResult := (__Instance as IsrvFacturasCliente).GenerarInformeEnPDF(ListaID, VerDatosCliente, Usuario, Firmado);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerarInformeEnPDFResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvFacturasProveedor_Invoker }

constructor TsrvFacturasProveedor_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvFacturasProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const FacturaID: AnsiString): Binary; }
var
  FacturaID: AnsiString;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('FacturaID', TypeInfo(AnsiString), FacturaID, []);

    lResult := (__Instance as IsrvFacturasProveedor).GenerateReport(FacturaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasProveedor', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvPresupuestosCliente_Invoker }

constructor TsrvPresupuestosCliente_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInforme(const ListaID: TIntegerArray): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);

    lResult := (__Instance as IsrvPresupuestosCliente).GenerarInforme(ListaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPresupuestosCliente', 'GenerarInformeResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);

    lResult := (__Instance as IsrvPresupuestosCliente).GenerarInformeEnPDF(ListaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPresupuestosCliente', 'GenerarInformeEnPDFResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvPedidosProveedor_Invoker }

constructor TsrvPedidosProveedor_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvPedidosProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: AnsiString): Binary; }
var
  ID: AnsiString;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ID', TypeInfo(AnsiString), ID, []);

    lResult := (__Instance as IsrvPedidosProveedor).GenerateReport(ID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPedidosProveedor', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvPedidosProveedor_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);

    lResult := (__Instance as IsrvPedidosProveedor).GenerarInformeEnPDF(ListaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPedidosProveedor', 'GenerarInformeEnPDFResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvAlbaranesCliente_Invoker }

constructor TsrvAlbaranesCliente_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInforme(const ListaID: TIntegerArray; const VerPrecios: Boolean): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  VerPrecios: Boolean;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
    __Message.Read('VerPrecios', TypeInfo(Boolean), VerPrecios, []);

    lResult := (__Instance as IsrvAlbaranesCliente).GenerarInforme(ListaID, VerPrecios);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; }
var
  ID: Integer;
  withRefCliente: Boolean;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ID', TypeInfo(Integer), ID, []);
    __Message.Read('withRefCliente', TypeInfo(Boolean), withRefCliente, []);

    lResult := (__Instance as IsrvAlbaranesCliente).GenerarInformeEtiquetas(ID, withRefCliente);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeEtiquetasResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvAlbaranesProveedor_Invoker }

constructor TsrvAlbaranesProveedor_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvAlbaranesProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: AnsiString): Binary; }
var
  ID: AnsiString;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ID', TypeInfo(AnsiString), ID, []);

    lResult := (__Instance as IsrvAlbaranesProveedor).GenerateReport(ID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesProveedor', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvEjercicios_Invoker }

constructor TsrvEjercicios_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvEjercicios_Invoker.Invoke_GenerarPGC(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarPGC(const ID_EJERCICIO_COPIA: Integer; const ID_EJERCICIO: Integer): Boolean; }
var
  ID_EJERCICIO_COPIA: Integer;
  ID_EJERCICIO: Integer;
  lResult: Boolean;
begin
  try
    __Message.Read('ID_EJERCICIO_COPIA', TypeInfo(Integer), ID_EJERCICIO_COPIA, []);
    __Message.Read('ID_EJERCICIO', TypeInfo(Integer), ID_EJERCICIO, []);

    lResult := (__Instance as IsrvEjercicios).GenerarPGC(ID_EJERCICIO_COPIA, ID_EJERCICIO);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvEjercicios', 'GenerarPGCResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvEjercicios_Invoker.Invoke_darEjercicioActivo(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function darEjercicioActivo(const ID_EMPRESA: Integer): Integer; }
var
  ID_EMPRESA: Integer;
  lResult: Integer;
begin
  try
    __Message.Read('ID_EMPRESA', TypeInfo(Integer), ID_EMPRESA, []);

    lResult := (__Instance as IsrvEjercicios).darEjercicioActivo(ID_EMPRESA);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvEjercicios', 'darEjercicioActivoResponse');
    __Message.Write('Result', TypeInfo(Integer), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvEjercicios_Invoker.Invoke_CerrarEjercicio(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function CerrarEjercicio(const ID_EJERCICIO_CIERRE: Integer; const ID_EJERCICIO_APERTURA: Integer): Boolean; }
var
  ID_EJERCICIO_CIERRE: Integer;
  ID_EJERCICIO_APERTURA: Integer;
  lResult: Boolean;
begin
  try
    __Message.Read('ID_EJERCICIO_CIERRE', TypeInfo(Integer), ID_EJERCICIO_CIERRE, []);
    __Message.Read('ID_EJERCICIO_APERTURA', TypeInfo(Integer), ID_EJERCICIO_APERTURA, []);

    lResult := (__Instance as IsrvEjercicios).CerrarEjercicio(ID_EJERCICIO_CIERRE, ID_EJERCICIO_APERTURA);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvEjercicios', 'CerrarEjercicioResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

{ TsrvReferencias_Invoker }

constructor TsrvReferencias_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvReferencias_Invoker.Invoke_DarNuevaReferencia(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarNuevaReferencia(const NombreReferencia: AnsiString; const EmpresaID: Integer; const TiendaID: Integer): AnsiString; }
var
  NombreReferencia: AnsiString;
  EmpresaID: Integer;
  TiendaID: Integer;
  lResult: AnsiString;
begin
  try
    __Message.Read('NombreReferencia', TypeInfo(AnsiString), NombreReferencia, []);
    __Message.Read('EmpresaID', TypeInfo(Integer), EmpresaID, []);
    __Message.Read('TiendaID', TypeInfo(Integer), TiendaID, []);

    lResult := (__Instance as IsrvReferencias).DarNuevaReferencia(NombreReferencia, EmpresaID, TiendaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvReferencias', 'DarNuevaReferenciaResponse');
    __Message.Write('Result', TypeInfo(AnsiString), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvReferencias_Invoker.Invoke_IncrementarValorReferencia(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function IncrementarValorReferencia(const NombreReferencia: AnsiString; const Valor: AnsiString; const EmpresaID: Integer; const TiendaID: Integer): Boolean; }
var
  NombreReferencia: AnsiString;
  Valor: AnsiString;
  EmpresaID: Integer;
  TiendaID: Integer;
  lResult: Boolean;
begin
  try
    __Message.Read('NombreReferencia', TypeInfo(AnsiString), NombreReferencia, []);
    __Message.Read('Valor', TypeInfo(AnsiString), Valor, []);
    __Message.Read('EmpresaID', TypeInfo(Integer), EmpresaID, []);
    __Message.Read('TiendaID', TypeInfo(Integer), TiendaID, []);

    lResult := (__Instance as IsrvReferencias).IncrementarValorReferencia(NombreReferencia, Valor, EmpresaID, TiendaID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvReferencias', 'IncrementarValorReferenciaResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

{ TsrvContabilidad_Invoker }

constructor TsrvContabilidad_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvContabilidad_Invoker.Invoke_TieneCuentaAsociada(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function TieneCuentaAsociada(const ID_CONTACTO: Integer; const ID_EMPRESA: Integer): Boolean; }
var
  ID_CONTACTO: Integer;
  ID_EMPRESA: Integer;
  lResult: Boolean;
begin
  try
    __Message.Read('ID_CONTACTO', TypeInfo(Integer), ID_CONTACTO, []);
    __Message.Read('ID_EMPRESA', TypeInfo(Integer), ID_EMPRESA, []);

    lResult := (__Instance as IsrvContabilidad).TieneCuentaAsociada(ID_CONTACTO, ID_EMPRESA);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContabilidad', 'TieneCuentaAsociadaResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvContabilidad_Invoker.Invoke_AnadirSubCuentaCliente(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function AnadirSubCuentaCliente(const ID_CONTACTO: Integer; const ID_TIENDA: Integer; const ID_EMPRESA: Integer; const CLIENTE: AnsiString): Boolean; }
var
  ID_CONTACTO: Integer;
  ID_TIENDA: Integer;
  ID_EMPRESA: Integer;
  CLIENTE: AnsiString;
  lResult: Boolean;
begin
  try
    __Message.Read('ID_CONTACTO', TypeInfo(Integer), ID_CONTACTO, []);
    __Message.Read('ID_TIENDA', TypeInfo(Integer), ID_TIENDA, []);
    __Message.Read('ID_EMPRESA', TypeInfo(Integer), ID_EMPRESA, []);
    __Message.Read('CLIENTE', TypeInfo(AnsiString), CLIENTE, []);

    lResult := (__Instance as IsrvContabilidad).AnadirSubCuentaCliente(ID_CONTACTO, ID_TIENDA, ID_EMPRESA, CLIENTE);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContabilidad', 'AnadirSubCuentaClienteResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvContabilidad_Invoker.Invoke_AnadirSubCuentaProveedor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function AnadirSubCuentaProveedor(const ID_CONTACTO: Integer; const ES_ACREEDOR: Integer; const ID_EMPRESA: Integer; const PROVEEDOR: AnsiString): Boolean; }
var
  ID_CONTACTO: Integer;
  ES_ACREEDOR: Integer;
  ID_EMPRESA: Integer;
  PROVEEDOR: AnsiString;
  lResult: Boolean;
begin
  try
    __Message.Read('ID_CONTACTO', TypeInfo(Integer), ID_CONTACTO, []);
    __Message.Read('ES_ACREEDOR', TypeInfo(Integer), ES_ACREEDOR, []);
    __Message.Read('ID_EMPRESA', TypeInfo(Integer), ID_EMPRESA, []);
    __Message.Read('PROVEEDOR', TypeInfo(AnsiString), PROVEEDOR, []);

    lResult := (__Instance as IsrvContabilidad).AnadirSubCuentaProveedor(ID_CONTACTO, ES_ACREEDOR, ID_EMPRESA, PROVEEDOR);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContabilidad', 'AnadirSubCuentaProveedorResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvContabilidad_Invoker.Invoke_DarNumOrdenAsiento(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarNumOrdenAsiento: Integer; }
var
  lResult: Integer;
begin
  try
    lResult := (__Instance as IsrvContabilidad).DarNumOrdenAsiento;

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContabilidad', 'DarNumOrdenAsientoResponse');
    __Message.Write('Result', TypeInfo(Integer), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvContabilidad_Invoker.Invoke_PuntearAsiento(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure PuntearAsiento(const ID_ASIENTO: Integer); }
var
  ID_ASIENTO: Integer;
begin
  try
    __Message.Read('ID_ASIENTO', TypeInfo(Integer), ID_ASIENTO, []);

    (__Instance as IsrvContabilidad).PuntearAsiento(ID_ASIENTO);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContabilidad', 'PuntearAsientoResponse');
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

    __oResponseOptions := [roNoResponse];

  finally
  end;
end;

procedure TsrvContabilidad_Invoker.Invoke_PuntearSubcuenta(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure PuntearSubcuenta(const ID_SUBCUENTA: Integer); }
var
  ID_SUBCUENTA: Integer;
begin
  try
    __Message.Read('ID_SUBCUENTA', TypeInfo(Integer), ID_SUBCUENTA, []);

    (__Instance as IsrvContabilidad).PuntearSubcuenta(ID_SUBCUENTA);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContabilidad', 'PuntearSubcuentaResponse');
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

    __oResponseOptions := [roNoResponse];

  finally
  end;
end;

{ TsrvUnidadesMedida_Invoker }

constructor TsrvUnidadesMedida_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

{ TsrvComisiones_Invoker }

constructor TsrvComisiones_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvComisiones_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ComisionID: AnsiString): Binary; }
var
  ComisionID: AnsiString;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ComisionID', TypeInfo(AnsiString), ComisionID, []);

    lResult := (__Instance as IsrvComisiones).GenerateReport(ComisionID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvComisiones', 'GenerateReportResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvProvinciasPoblaciones_Invoker }

constructor TsrvProvinciasPoblaciones_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvProvinciasPoblaciones_Invoker.Invoke_DarListaProvincias(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaProvincias: Binary; }
var
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    lResult := (__Instance as IsrvProvinciasPoblaciones).DarListaProvincias;

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvProvinciasPoblaciones', 'DarListaProvinciasResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvProvinciasPoblaciones_Invoker.Invoke_DarListaPoblaciones(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaPoblaciones(const ID_Provincia: Integer): Binary; }
var
  ID_Provincia: Integer;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('ID_Provincia', TypeInfo(Integer), ID_Provincia, []);

    lResult := (__Instance as IsrvProvinciasPoblaciones).DarListaPoblaciones(ID_Provincia);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvProvinciasPoblaciones', 'DarListaPoblacionesResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvGestorDocumentos_Invoker }

constructor TsrvGestorDocumentos_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvGestorDocumentos_Invoker.Invoke_DarListaFicheros(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaFicheros(const Almacen: TRdxAlmacenes; const ID: Integer): StringArray; }
var
  Almacen: FactuGES_Intf.TRdxAlmacenes;
  ID: Integer;
  lResult: DataAbstract4_Intf.StringArray;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('Almacen', TypeInfo(FactuGES_Intf.TRdxAlmacenes), Almacen, []);
    __Message.Read('ID', TypeInfo(Integer), ID, []);

    lResult := (__Instance as IsrvGestorDocumentos).DarListaFicheros(Almacen, ID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorDocumentos', 'DarListaFicherosResponse');
    __Message.Write('Result', TypeInfo(DataAbstract4_Intf.StringArray), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorDocumentos_Invoker.Invoke_DescargarFichero(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DescargarFichero(const Almacen: TRdxAlmacenes; const ID: Integer; const NombreFichero: AnsiString): Binary; }
var
  Almacen: FactuGES_Intf.TRdxAlmacenes;
  ID: Integer;
  NombreFichero: AnsiString;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  lResult := nil;
  try
    __Message.Read('Almacen', TypeInfo(FactuGES_Intf.TRdxAlmacenes), Almacen, []);
    __Message.Read('ID', TypeInfo(Integer), ID, []);
    __Message.Read('NombreFichero', TypeInfo(AnsiString), NombreFichero, []);

    lResult := (__Instance as IsrvGestorDocumentos).DescargarFichero(Almacen, ID, NombreFichero);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorDocumentos', 'DescargarFicheroResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorDocumentos_Invoker.Invoke_SubirFichero(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function SubirFichero(const Almacen: TRdxAlmacenes; const ID: Integer; const NombreFichero: AnsiString; const Fichero: Binary): Boolean; }
var
  Almacen: FactuGES_Intf.TRdxAlmacenes;
  ID: Integer;
  NombreFichero: AnsiString;
  Fichero: Binary;
  lResult: Boolean;
  __lObjectDisposer: TROObjectDisposer;
begin
  Fichero := nil;
  try
    __Message.Read('Almacen', TypeInfo(FactuGES_Intf.TRdxAlmacenes), Almacen, []);
    __Message.Read('ID', TypeInfo(Integer), ID, []);
    __Message.Read('NombreFichero', TypeInfo(AnsiString), NombreFichero, []);
    __Message.Read('Fichero', TypeInfo(Binary), Fichero, []);

    lResult := (__Instance as IsrvGestorDocumentos).SubirFichero(Almacen, ID, NombreFichero, Fichero);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorDocumentos', 'SubirFicheroResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(Fichero);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorDocumentos_Invoker.Invoke_EliminarFichero(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function EliminarFichero(const Almacen: TRdxAlmacenes; const ID: Integer; const NombreFichero: AnsiString): Boolean; }
var
  Almacen: FactuGES_Intf.TRdxAlmacenes;
  ID: Integer;
  NombreFichero: AnsiString;
  lResult: Boolean;
begin
  try
    __Message.Read('Almacen', TypeInfo(FactuGES_Intf.TRdxAlmacenes), Almacen, []);
    __Message.Read('ID', TypeInfo(Integer), ID, []);
    __Message.Read('NombreFichero', TypeInfo(AnsiString), NombreFichero, []);

    lResult := (__Instance as IsrvGestorDocumentos).EliminarFichero(Almacen, ID, NombreFichero);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorDocumentos', 'EliminarFicheroResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

procedure TsrvGestorDocumentos_Invoker.Invoke_EliminarID(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function EliminarID(const Almacen: TRdxAlmacenes; const ID: Integer): Boolean; }
var
  Almacen: FactuGES_Intf.TRdxAlmacenes;
  ID: Integer;
  lResult: Boolean;
begin
  try
    __Message.Read('Almacen', TypeInfo(FactuGES_Intf.TRdxAlmacenes), Almacen, []);
    __Message.Read('ID', TypeInfo(Integer), ID, []);

    lResult := (__Instance as IsrvGestorDocumentos).EliminarID(Almacen, ID);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorDocumentos', 'EliminarIDResponse');
    __Message.Write('Result', TypeInfo(Boolean), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
  end;
end;

{ TsrvGestorInformes_Invoker }

constructor TsrvGestorInformes_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeIVAClientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeIVAClientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; 
                                       const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  ListaIDClientes: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDClientes := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('ListaIDClientes', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDClientes, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeIVAClientes(IdEmpresa, FechaInicio, FechaFin, ListaIDClientes, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeIVAClientesResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDClientes);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeIVAProveedores(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; 
                                          const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  ListaIDProveedores: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDProveedores := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('ListaIDProveedores', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDProveedores, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeIVAProveedores(IdEmpresa, FechaInicio, FechaFin, ListaIDProveedores, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeIVAProveedoresResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDProveedores);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoFacturasCli(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoFacturasCli(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListadoIDClientes: TIntegerArray; 
                                              const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  ListadoIDClientes: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListadoIDClientes := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('ListadoIDClientes', TypeInfo(FactuGES_Intf.TIntegerArray), ListadoIDClientes, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoFacturasCli(IdEmpresa, FechaInicio, FechaFin, ListadoIDClientes, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoFacturasCliResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListadoIDClientes);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoFacturasProv(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; 
                                               const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  FechaVenInicio: Variant;
  FechaVenFin: Variant;
  ListaIDProveedores: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDProveedores := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('FechaVenInicio', TypeInfo(Variant), FechaVenInicio, []);
    __Message.Read('FechaVenFin', TypeInfo(Variant), FechaVenFin, []);
    __Message.Read('ListaIDProveedores', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDProveedores, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoFacturasProv(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoFacturasProvResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDProveedores);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoFacturasCliPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; 
                                                        const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  ListaIDClientes: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDClientes := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('ListaIDClientes', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDClientes, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoFacturasCliPendientes(IdEmpresa, FechaInicio, FechaFin, ListaIDClientes, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoFacturasCliPendientesResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDClientes);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoFacturasProvPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; 
                                                         const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  FechaVenInicio: Variant;
  FechaVenFin: Variant;
  ListaIDProveedores: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDProveedores := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('FechaVenInicio', TypeInfo(Variant), FechaVenInicio, []);
    __Message.Read('FechaVenFin', TypeInfo(Variant), FechaVenFin, []);
    __Message.Read('ListaIDProveedores', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDProveedores, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoFacturasProvPendientes(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoFacturasProvPendientesResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDProveedores);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoRecibosCliente(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoRecibosCliente(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; 
                                                 const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  FechaVenInicio: Variant;
  FechaVenFin: Variant;
  ListaIDClientes: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDClientes := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('FechaVenInicio', TypeInfo(Variant), FechaVenInicio, []);
    __Message.Read('FechaVenFin', TypeInfo(Variant), FechaVenFin, []);
    __Message.Read('ListaIDClientes', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDClientes, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoRecibosCliente(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDClientes, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoRecibosClienteResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDClientes);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoRecibosProveedor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoRecibosProveedor(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; 
                                                   const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  FechaVenInicio: Variant;
  FechaVenFin: Variant;
  ListaIDProveedores: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDProveedores := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('FechaVenInicio', TypeInfo(Variant), FechaVenInicio, []);
    __Message.Read('FechaVenFin', TypeInfo(Variant), FechaVenFin, []);
    __Message.Read('ListaIDProveedores', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDProveedores, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoRecibosProveedor(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoRecibosProveedorResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDProveedores);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoRecibosCliPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoRecibosCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; 
                                                       const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  FechaVenInicio: Variant;
  FechaVenFin: Variant;
  ListaIDClientes: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDClientes := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('FechaVenInicio', TypeInfo(Variant), FechaVenInicio, []);
    __Message.Read('FechaVenFin', TypeInfo(Variant), FechaVenFin, []);
    __Message.Read('ListaIDClientes', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDClientes, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoRecibosCliPendientes(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDClientes, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoRecibosCliPendientesResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDClientes);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoRecibosProvPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoRecibosProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; 
                                                        const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  FechaVenInicio: Variant;
  FechaVenFin: Variant;
  ListaIDProveedores: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDProveedores := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('FechaVenInicio', TypeInfo(Variant), FechaVenInicio, []);
    __Message.Read('FechaVenFin', TypeInfo(Variant), FechaVenFin, []);
    __Message.Read('ListaIDProveedores', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDProveedores, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoRecibosProvPendientes(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoRecibosProvPendientesResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDProveedores);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoPresupuestos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoPresupuestos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; 
                                               const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
var
  IdEmpresa: Integer;
  FechaInicio: Variant;
  FechaFin: Variant;
  ListaIDClientes: FactuGES_Intf.TIntegerArray;
  Desglosado: Boolean;
  ImporteMinimo: Currency;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaIDClientes := nil;
  lResult := nil;
  try
    __Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
    __Message.Read('FechaInicio', TypeInfo(Variant), FechaInicio, []);
    __Message.Read('FechaFin', TypeInfo(Variant), FechaFin, []);
    __Message.Read('ListaIDClientes', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDClientes, []);
    __Message.Read('Desglosado', TypeInfo(Boolean), Desglosado, []);
    __Message.Read('ImporteMinimo', TypeInfo(Currency), ImporteMinimo, []);

    lResult := (__Instance as IsrvGestorInformes).GenerarInformeListadoPresupuestos(IdEmpresa, FechaInicio, FechaFin, ListaIDClientes, Desglosado, ImporteMinimo);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeListadoPresupuestosResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaIDClientes);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

{ TsrvContratosCliente_Invoker }

constructor TsrvContratosCliente_Invoker.Create;
begin
  inherited Create;
  FAbstract := False;
end;

procedure TsrvContratosCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInforme(const ListaID: TIntegerArray; const VerCondiciones: Boolean; const TamLetra: Integer): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  VerCondiciones: Boolean;
  TamLetra: Integer;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
    __Message.Read('VerCondiciones', TypeInfo(Boolean), VerCondiciones, []);
    __Message.Read('TamLetra', TypeInfo(Integer), TamLetra, []);

    lResult := (__Instance as IsrvContratosCliente).GenerarInforme(ListaID, VerCondiciones, TamLetra);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContratosCliente', 'GenerarInformeResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

procedure TsrvContratosCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerCondiciones: Boolean; const Usuario: AnsiString; const Firmado: Boolean): Binary; }
var
  ListaID: FactuGES_Intf.TIntegerArray;
  VerCondiciones: Boolean;
  Usuario: AnsiString;
  Firmado: Boolean;
  lResult: Binary;
  __lObjectDisposer: TROObjectDisposer;
begin
  ListaID := nil;
  lResult := nil;
  try
    __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
    __Message.Read('VerCondiciones', TypeInfo(Boolean), VerCondiciones, []);
    __Message.Read('Usuario', TypeInfo(AnsiString), Usuario, []);
    __Message.Read('Firmado', TypeInfo(Boolean), Firmado, []);

    lResult := (__Instance as IsrvContratosCliente).GenerarInformeEnPDF(ListaID, VerCondiciones, Usuario, Firmado);

    __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContratosCliente', 'GenerarInformeEnPDFResponse');
    __Message.Write('Result', TypeInfo(Binary), lResult, []);
    __Message.Finalize;
    __Message.UnsetAttributes(__Transport);

  finally
    __lObjectDisposer := TROObjectDisposer.Create(__Instance);
    try
      __lObjectDisposer.Add(ListaID);
      __lObjectDisposer.Add(lResult);
    finally
      __lObjectDisposer.Free();
    end;
  end;
end;

initialization
end.
