diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj index d03ddc0b..9237feb0 100644 --- a/Source/Base/Base.dproj +++ b/Source/Base/Base.dproj @@ -54,58 +54,58 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fConfigurarConexion
TForm diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas index e1b8f863..1c977060 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas @@ -77,7 +77,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schAlbaranesClienteClient_Intf; + uSistemaFunc, uDataModuleServer, schAlbaranesClienteClient_Intf; const rptInforme = 'InfAlbaranCliente.fr3'; @@ -134,6 +134,9 @@ begin end; procedure TRptAlbaranesCliente._GenerarAlbaran(const AID: Integer); +var + AInforme: Variant; + begin FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" try @@ -146,7 +149,11 @@ begin tbl_Cabecera.Active := True; tbl_Detalles.Active := True; - frxReport.LoadFromFile(DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarFactura, no encuentra informe' + rptInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" diff --git a/Source/Modulos/Albaranes de proveedor/Reports/uRptAlbaranesProveedor_Server.pas b/Source/Modulos/Albaranes de proveedor/Reports/uRptAlbaranesProveedor_Server.pas index fe12ab76..409a9431 100644 --- a/Source/Modulos/Albaranes de proveedor/Reports/uRptAlbaranesProveedor_Server.pas +++ b/Source/Modulos/Albaranes de proveedor/Reports/uRptAlbaranesProveedor_Server.pas @@ -42,7 +42,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schAlbaranesProveedorClient_Intf; + uSistemaFunc, uDataModuleServer, schAlbaranesProveedorClient_Intf; const rptInforme = 'InfAlbaranProveedor.fr3'; @@ -90,6 +90,7 @@ var AStream: TMemoryStream; dsMaster: IDADataset; dsDetail: IDADataset; + AInforme: Variant; begin AStream := TMemoryStream.Create; @@ -105,7 +106,11 @@ begin DABINAdapter.WriteDataset(AStream, dsDetail, [woRows, woSchema], -1); DABINAdapter.ReadDataset(AStream, tbl_Detalles, TRUE, '', TRUE, TRUE); - frxReport.LoadFromFile(DarRutaInformes + rptInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: GenerarAlbaran, no encuentra informe' + rptInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally diff --git a/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas b/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas index 7786460b..706f17b3 100644 --- a/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas +++ b/Source/Modulos/Contactos/Reports/uRptEtiquetasContacto_Server.pas @@ -38,7 +38,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schContactosClient_Intf; + uSistemaFunc, uDataModuleServer, schContactosClient_Intf; const rptEtiquetasContacto = 'InfEtiquetasContacto.fr3'; @@ -63,6 +63,7 @@ var dsMaster: IDADataset; i : Integer; AWhereStr : String; + AInforme: Variant; begin Result := Binary.Create; @@ -88,7 +89,11 @@ begin Bin2DataStreamer.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1); Bin2DataStreamer.ReadDataset(AStream, tbl_Contactos, TRUE, '', TRUE, TRUE); - frxReport.LoadFromFile(DarRutaInformes + rptEtiquetasContacto, True); + AInforme := DarRutaFichero(DarRutaInformes, rptEtiquetasContacto); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: GenerarInforme, no encuentra informe' + rptEtiquetasContacto)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(True); frxReport.PreviewPages.SaveToStream(Result); diff --git a/Source/Modulos/Contactos/Reports/uRptFichasEmpleado_Server.pas b/Source/Modulos/Contactos/Reports/uRptFichasEmpleado_Server.pas index 0e441e38..6f701fc1 100644 --- a/Source/Modulos/Contactos/Reports/uRptFichasEmpleado_Server.pas +++ b/Source/Modulos/Contactos/Reports/uRptFichasEmpleado_Server.pas @@ -40,7 +40,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schContactosClient_Intf; + uSistemaFunc, uDataModuleServer, schContactosClient_Intf; const rptFichaEmpleado = 'InfFichaEmpleado.fr3'; @@ -78,6 +78,7 @@ procedure TRptFichasEmpleado._GenerarFicha(const ID: Integer); var AStream: TMemoryStream; dsMaster: IDADataset; + AInforme: Variant; begin AStream := TMemoryStream.Create; FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" @@ -88,7 +89,11 @@ begin Bin2DataStreamer.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1); Bin2DataStreamer.ReadDataset(AStream, tbl_FichaEmpleado, TRUE, '', TRUE, TRUE); - frxReport.LoadFromFile(DarRutaInformes + rptFichaEmpleado, True); + AInforme := DarRutaFichero(DarRutaInformes, rptFichaEmpleado); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarFicha, no encuentra informe' + rptFichaEmpleado)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally diff --git a/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas b/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas index d70d15aa..1db6cba1 100644 --- a/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas +++ b/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas @@ -96,7 +96,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schFacturasProveedorClient_Intf; + uSistemaFunc, uDataModuleServer, schFacturasProveedorClient_Intf; const rptInformeIVA = 'InformeIVAProveedores.fr3'; @@ -192,6 +192,7 @@ function TRptFacturasProveedor._GenerarInforme(const TipoInforme: String; var Condicion: TDAWhereExpression; i: Integer; + AInforme: Variant; begin Result := Binary.Create; @@ -264,7 +265,11 @@ begin tbl_InformeListadoFacturas.Active := True; - frxReport.LoadFromFile(DarRutaInformes + IntToStr(IdEmpresa) + '\' + TipoInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, tbl_InformeListadoFacturas.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe' + TipoInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.Variables.Variables['FechaInicio'] := FechaInicio; frxReport.Variables.Variables['FechaFin'] := FechaFin; diff --git a/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas b/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas index a426f22d..5b1f3181 100644 --- a/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas +++ b/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas @@ -91,7 +91,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schPedidosProveedorClient_Intf; + uSistemaFunc, uDataModuleServer, schPedidosProveedorClient_Intf; const rptInforme = 'InfPedidoProveedor.fr3'; @@ -170,6 +170,7 @@ function TRptPedidosProveedor._GenerarInforme(const TipoInforme: String; var Condicion: TDAWhereExpression; i: Integer; + AInforme: Variant; begin Result := Binary.Create; @@ -242,7 +243,11 @@ begin tbl_InformeListadoPedidos.Active := True; - frxReport.LoadFromFile(DarRutaInformes + IntToStr(IdEmpresa) + '\' + TipoInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, tbl_InformeListadoPedidos.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe' + TipoInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.Variables.Variables['FechaInicio'] := FechaInicio; frxReport.Variables.Variables['FechaFin'] := FechaFin; @@ -255,6 +260,8 @@ begin end; procedure TRptPedidosProveedor._GenerarPedido(const ID: Integer); +var + AInforme: Variant; begin FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" try @@ -267,7 +274,11 @@ begin tbl_Cabecera.Active := True; tbl_Detalles.Active := True; - frxReport.LoadFromFile(DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarPedido, no encuentra informe' + rptInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" diff --git a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas index 870d3775..73039244 100644 --- a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas +++ b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas @@ -97,7 +97,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schPresupuestosClienteClient_Intf; + uSistemaFunc, uDataModuleServer, schPresupuestosClienteClient_Intf; const rptInforme = 'InfPresupuestoCliente.fr3'; @@ -175,6 +175,7 @@ function TRptPresupuestosCliente._GenerarInforme(const TipoInforme: String; var Condicion: TDAWhereExpression; i: Integer; + AInforme: Variant; begin Result := Binary.Create; @@ -247,7 +248,11 @@ begin tbl_InformeListadoPresupuestos.Active := True; - frxReport.LoadFromFile(DarRutaInformes + IntToStr(IdEmpresa) + '\' + TipoInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, tbl_InformeListadoPresupuestos.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe' + TipoInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.Variables.Variables['FechaInicio'] := FechaInicio; frxReport.Variables.Variables['FechaFin'] := FechaFin; @@ -260,6 +265,8 @@ begin end; procedure TRptPresupuestosCliente._GenerarPresupuesto(const AID: Integer); +var + AInforme: Variant; begin FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" try @@ -278,7 +285,11 @@ begin tbl_Detalles.Active := True; tbl_Resumen.Active := True; - frxReport.LoadFromFile(DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarPresupuesto, no encuentra informe' + rptInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" diff --git a/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas b/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas index 9458ea2b..fa4f4473 100644 --- a/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas +++ b/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas @@ -47,7 +47,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schRecibosClienteClient_Intf; + uSistemaFunc, uDataModuleServer, schRecibosClienteClient_Intf; const rptInforme = 'InfReciboCliente.fr3'; @@ -144,6 +144,7 @@ function TRptRecibosCliente._GenerarInforme(const TipoInforme: String; var Condicion: TDAWhereExpression; i: Integer; + AInforme: Variant; begin Result := Binary.Create; @@ -215,7 +216,11 @@ begin tbl_InformeListadoRecibos.Active := True; - frxReport.LoadFromFile(DarRutaInformes + IntToStr(IdEmpresa) + '\' + TipoInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, tbl_InformeListadoRecibos.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe' + TipoInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.Variables.Variables['FechaInicio'] := FechaInicio; frxReport.Variables.Variables['FechaFin'] := FechaFin; @@ -229,6 +234,8 @@ begin end; procedure TRptRecibosCliente._GenerarRecibo(const ID: Integer); +Var + AInforme: Variant; begin FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" try @@ -241,7 +248,11 @@ begin tbl_Cabecera.Active := True; tbl_Compensados.Active := True; - frxReport.LoadFromFile(DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarRecibo, no encuentra informe' + rptInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO" diff --git a/Source/Modulos/Recibos de proveedor/Reports/uRptRecibosProveedor_Server.pas b/Source/Modulos/Recibos de proveedor/Reports/uRptRecibosProveedor_Server.pas index 12d88af6..9bbe0fc9 100644 --- a/Source/Modulos/Recibos de proveedor/Reports/uRptRecibosProveedor_Server.pas +++ b/Source/Modulos/Recibos de proveedor/Reports/uRptRecibosProveedor_Server.pas @@ -45,7 +45,7 @@ implementation {$R *.dfm} uses - uDataModuleServer, schRecibosProveedorClient_Intf; + uSistemaFunc, uDataModuleServer, schRecibosProveedorClient_Intf; const rptInforme = 'InfReciboProveedor.fr3'; @@ -127,6 +127,7 @@ function TRptRecibosProveedor._GenerarInforme(const TipoInforme: String; var Condicion: TDAWhereExpression; i: Integer; + AInforme: Variant; begin Result := Binary.Create; @@ -198,7 +199,11 @@ begin tbl_InformeListadoRecibos.Active := True; - frxReport.LoadFromFile(DarRutaInformes + IntToStr(IdEmpresa) + '\' + TipoInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, TipoInforme, tbl_InformeListadoRecibos.FieldByName('ID_EMPRESA').AsString); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe' + TipoInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.Variables.Variables['FechaInicio'] := FechaInicio; frxReport.Variables.Variables['FechaFin'] := FechaFin; diff --git a/Source/Modulos/Remesas de cliente/Reports/uRptRemesasCliente_Server.pas b/Source/Modulos/Remesas de cliente/Reports/uRptRemesasCliente_Server.pas index 7ef50a8b..6febe072 100644 --- a/Source/Modulos/Remesas de cliente/Reports/uRptRemesasCliente_Server.pas +++ b/Source/Modulos/Remesas de cliente/Reports/uRptRemesasCliente_Server.pas @@ -90,6 +90,7 @@ var AStream: TMemoryStream; dsMaster: IDADataset; dsDetail: IDADataset; + AInforme: Variant; begin AStream := TMemoryStream.Create; @@ -105,7 +106,11 @@ begin DABINAdapter.WriteDataset(AStream, dsDetail, [woRows, woSchema], -1); DABINAdapter.ReadDataset(AStream, tbl_Detalles, TRUE, '', TRUE, TRUE); - frxReport.LoadFromFile(DarRutaInformes + rptInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: GenerarRemesa, no encuentra informe' + rptInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally diff --git a/Source/Modulos/Remesas de proveedor/Reports/uRptRemesasProveedor_Server.pas b/Source/Modulos/Remesas de proveedor/Reports/uRptRemesasProveedor_Server.pas index 745a0e52..0715c96c 100644 --- a/Source/Modulos/Remesas de proveedor/Reports/uRptRemesasProveedor_Server.pas +++ b/Source/Modulos/Remesas de proveedor/Reports/uRptRemesasProveedor_Server.pas @@ -90,6 +90,7 @@ var AStream: TMemoryStream; dsMaster: IDADataset; dsDetail: IDADataset; + AInforme: Variant; begin AStream := TMemoryStream.Create; @@ -105,7 +106,11 @@ begin DABINAdapter.WriteDataset(AStream, dsDetail, [woRows, woSchema], -1); DABINAdapter.ReadDataset(AStream, tbl_Detalles, TRUE, '', TRUE, TRUE); - frxReport.LoadFromFile(DarRutaInformes + rptInforme, True); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme); + if VarIsNull(AInforme) then + raise Exception.Create (('Error Servidor: GenerarRemesa, no encuentra informe' + rptInforme)); + + frxReport.LoadFromFile(AInforme, True); frxReport.PrepareReport(False); finally