diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj
index 2d4e1830..832e442b 100644
--- a/Source/Base/Base.dproj
+++ b/Source/Base/Base.dproj
@@ -53,57 +53,57 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Cliente/FactuGES.dpr b/Source/Cliente/FactuGES.dpr
index 906bce24..c094c23d 100644
--- a/Source/Cliente/FactuGES.dpr
+++ b/Source/Cliente/FactuGES.dpr
@@ -2,6 +2,7 @@ program FactuGES;
uses
// ExceptionLog,
+ ExceptionLog,
Forms,
Windows,
SysUtils,
diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj
index 677b77f7..1f3ad632 100644
--- a/Source/Cliente/FactuGES.dproj
+++ b/Source/Cliente/FactuGES.dproj
@@ -59,10 +59,6 @@
-
-
-
-
ExpressPrinting System by Developer Express Inc.
PluginSDK for Delphi 10 (Runtime)
Microsoft Office 2000 Sample Automation Server Wrapper Components
diff --git a/Source/Informes/1/AlbaranCliente.rdx b/Source/Informes/1/AlbaranCliente.rdx
new file mode 100644
index 00000000..b57095c8
Binary files /dev/null and b/Source/Informes/1/AlbaranCliente.rdx differ
diff --git a/Source/Informes/1/InfAlbaranCliente.fr3 b/Source/Informes/1/InfAlbaranCliente.fr3
new file mode 100644
index 00000000..06ad97a5
--- /dev/null
+++ b/Source/Informes/1/InfAlbaranCliente.fr3
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Informes/1/InfPedidoProveedor.fr3 b/Source/Informes/1/InfPedidoProveedor.fr3
new file mode 100644
index 00000000..be376f3b
--- /dev/null
+++ b/Source/Informes/1/InfPedidoProveedor.fr3
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Informes/1/InfPresupuestoCliente.fr3 b/Source/Informes/1/InfPresupuestoCliente.fr3
index d80bf8ae..8a2eb224 100644
--- a/Source/Informes/1/InfPresupuestoCliente.fr3
+++ b/Source/Informes/1/InfPresupuestoCliente.fr3
@@ -1,5 +1,5 @@
-
+
@@ -97,13 +97,13 @@
-
-
+
-
+
+
diff --git a/Source/Informes/1/InfReciboCliente.fr3 b/Source/Informes/1/InfReciboCliente.fr3
new file mode 100644
index 00000000..5739b31e
--- /dev/null
+++ b/Source/Informes/1/InfReciboCliente.fr3
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Informes/1/PedidoProveedor.rdx b/Source/Informes/1/PedidoProveedor.rdx
new file mode 100644
index 00000000..f5bd1be5
Binary files /dev/null and b/Source/Informes/1/PedidoProveedor.rdx differ
diff --git a/Source/Informes/2/AlbaranCliente.rdx b/Source/Informes/2/AlbaranCliente.rdx
new file mode 100644
index 00000000..59caa1b8
Binary files /dev/null and b/Source/Informes/2/AlbaranCliente.rdx differ
diff --git a/Source/Informes/2/AlbaranProveedor.rdx b/Source/Informes/2/AlbaranProveedor.rdx
new file mode 100644
index 00000000..84a2a365
Binary files /dev/null and b/Source/Informes/2/AlbaranProveedor.rdx differ
diff --git a/Source/Informes/2/InfAlbaranCliente.fr3 b/Source/Informes/2/InfAlbaranCliente.fr3
new file mode 100644
index 00000000..e0b9fd50
--- /dev/null
+++ b/Source/Informes/2/InfAlbaranCliente.fr3
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Informes/2/InfFacturaCliente.fr3 b/Source/Informes/2/InfFacturaCliente.fr3
index 57794242..4b29119c 100644
--- a/Source/Informes/2/InfFacturaCliente.fr3
+++ b/Source/Informes/2/InfFacturaCliente.fr3
@@ -1,5 +1,5 @@
-
+
@@ -52,11 +52,11 @@
-
+
-
+
diff --git a/Source/Informes/2/InfPedidoProveedor.fr3 b/Source/Informes/2/InfPedidoProveedor.fr3
new file mode 100644
index 00000000..672022d1
--- /dev/null
+++ b/Source/Informes/2/InfPedidoProveedor.fr3
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Informes/2/InfPresupuestoCliente.fr3 b/Source/Informes/2/InfPresupuestoCliente.fr3
index bffb7469..9c454d9e 100644
--- a/Source/Informes/2/InfPresupuestoCliente.fr3
+++ b/Source/Informes/2/InfPresupuestoCliente.fr3
@@ -1,5 +1,5 @@
-
+
@@ -24,7 +24,7 @@
-
+
@@ -52,7 +52,7 @@
-
+
@@ -70,7 +70,7 @@
-
+
@@ -88,7 +88,7 @@
-
+
diff --git a/Source/Informes/2/InfReciboCliente.fr3 b/Source/Informes/2/InfReciboCliente.fr3
new file mode 100644
index 00000000..fba3bf4f
--- /dev/null
+++ b/Source/Informes/2/InfReciboCliente.fr3
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Informes/2/PedidoProveedor.rdx b/Source/Informes/2/PedidoProveedor.rdx
new file mode 100644
index 00000000..12121e3b
Binary files /dev/null and b/Source/Informes/2/PedidoProveedor.rdx differ
diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
index 5fd6b8e1..cf157cb7 100644
--- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
+++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
@@ -15,10 +15,6 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Left = 344
Top = 72
end
- object DABINAdapter: TDABINAdapter
- Left = 48
- Top = 80
- end
object frxRichObject1: TfrxRichObject
Left = 280
Top = 360
@@ -878,7 +874,7 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
LocalSchema = schReport
- LocalDataStreamer = DABINAdapter
+ LocalDataStreamer = DABin2DataStreamer1
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'Informe_Cabecera'
@@ -946,7 +942,7 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
LocalSchema = schReport
- LocalDataStreamer = DABINAdapter
+ LocalDataStreamer = DABin2DataStreamer1
MasterSource = DADSCabecera
MasterFields = 'ID'
DetailFields = 'ID_ALBARAN'
@@ -971,4 +967,8 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Left = 344
Top = 304
end
+ object DABin2DataStreamer1: TDABin2DataStreamer
+ Left = 48
+ Top = 88
+ end
end
diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas
index dee5da5d..e1b8f863 100644
--- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas
+++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas
@@ -8,13 +8,12 @@ uses
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase,
- uDAMemDataTable, frxExportPDF, FactuGES_Intf;
+ uDAMemDataTable, frxExportPDF, FactuGES_Intf, uDABin2DataStreamer;
type
TRptAlbaranesCliente = class(TDataModule)
DADSCabecera: TDADataSource;
DADSDetalles: TDADataSource;
- DABINAdapter: TDABINAdapter;
frxRichObject1: TfrxRichObject;
frxBarCodeObject1: TfrxBarCodeObject;
frxOLEObject1: TfrxOLEObject;
@@ -61,6 +60,7 @@ type
tbl_Detalles: TDAMemDataTable;
frxPDFExport1: TfrxPDFExport;
schReport: TDASchema;
+ DABin2DataStreamer1: TDABin2DataStreamer;
procedure DataModuleCreate(Sender: TObject);
private
FConnection: IDAConnection;
@@ -146,7 +146,7 @@ begin
tbl_Cabecera.Active := True;
tbl_Detalles.Active := True;
- frxReport.LoadFromFile(DarRutaInformes + rptInforme, True);
+ frxReport.LoadFromFile(DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme, True);
frxReport.PrepareReport(False);
finally
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
@@ -159,6 +159,7 @@ var
dsDetail: IDADataset;
AStream: TMemoryStream;
begin
+{
AStream := TMemoryStream.Create;
Result := Binary.Create;
FConnection.BeginTransaction;
@@ -185,6 +186,7 @@ begin
AStream.Free;
FConnection.RollbackTransaction;
end;
+}
end;
end.
diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.dfm
index 5cb20af6..95f34d43 100644
--- a/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.dfm
+++ b/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.dfm
@@ -1,5 +1,6 @@
object RptWordAlbaranCliente: TRptWordAlbaranCliente
OldCreateOrder = False
+ OnCreate = DataModuleCreate
Height = 262
Width = 374
object schReport: TDASchema
diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.pas b/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.pas
index ff4cbe1f..50d51d1d 100644
--- a/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.pas
+++ b/Source/Modulos/Albaranes de cliente/Reports/uRptWordAlbaranCliente.pas
@@ -52,8 +52,6 @@ constructor TRptWordAlbaranCliente.Create(AOwner: TComponent);
begin
inherited;
FDocumento := NIL;
-
- FPlantilla := DarRutaInformes + rptInforme;
end;
procedure TRptWordAlbaranCliente.DataModuleCreate(Sender: TObject);
@@ -237,6 +235,7 @@ begin
tbl_Cabecera.Active := True;
tbl_Detalles.Active := True;
+ FPlantilla := DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme;
FCodigoAlbaran := AID;
ACopiaPlantilla := DarFicheroTemporal;
diff --git a/Source/Modulos/Inventario/Controller/uInventarioController.pas b/Source/Modulos/Inventario/Controller/uInventarioController.pas
index de695131..e4b1fe50 100644
--- a/Source/Modulos/Inventario/Controller/uInventarioController.pas
+++ b/Source/Modulos/Inventario/Controller/uInventarioController.pas
@@ -1168,8 +1168,20 @@ var
AArticulosTraslado : IBizInventario;
begin
Result := False;
+
if Assigned(AArticulos) then
begin
+{ DesconectarTabla(AArticulos.DataTable);
+ repeat
+ if (AArticulos.ID_ARTICULO < 1) then
+ AArticulos.Delete;
+ AArticulos.First;
+ until (AArticulos.DataTable.Locate('ID_ARTICULO', '0', []) = false);
+
+ ConectarTabla(AArticulos.DataTable);
+}
+
+
//Deshabilitamos el calculo de ID (RECID) para poderlo usar para la insercin de movimientos
AArticulos.DataTable.OnCalcFields := DeshabilitarOnCalcFields;
with AArticulos.DataTable do
diff --git a/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas b/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas
index 992366c0..61fc1e39 100644
--- a/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas
+++ b/Source/Modulos/Pedidos a proveedor/Reports/uRptPedidosProveedor_Server.pas
@@ -267,7 +267,7 @@ begin
tbl_Cabecera.Active := True;
tbl_Detalles.Active := True;
- frxReport.LoadFromFile(DarRutaInformes + rptInforme, True);
+ frxReport.LoadFromFile(DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme, True);
frxReport.PrepareReport(False);
finally
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
diff --git a/Source/Modulos/Pedidos a proveedor/Reports/uRptWordPedidoProveedor.pas b/Source/Modulos/Pedidos a proveedor/Reports/uRptWordPedidoProveedor.pas
index 2e6e9618..99e6fe44 100644
--- a/Source/Modulos/Pedidos a proveedor/Reports/uRptWordPedidoProveedor.pas
+++ b/Source/Modulos/Pedidos a proveedor/Reports/uRptWordPedidoProveedor.pas
@@ -55,7 +55,6 @@ begin
ImprimirPrecio := False;
ImprimirRefProveedor := False;
FDocumento := NIL;
- FPlantilla := DarRutaInformes + rptInforme;
end;
destructor TRptWordPedidoProveedor.Destroy;
@@ -255,6 +254,7 @@ begin
tbl_Cabecera.Active := True;
tbl_Detalles.Active := True;
+ FPlantilla := DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme;
FCodigoPedido := AID;
if RecuperarEmpresa(tbl_Cabecera.FieldByName('ID_EMPRESA').AsInteger, tbl_Empresa) then
diff --git a/Source/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm b/Source/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm
index ee6a1131..8b8c808e 100644
--- a/Source/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm
+++ b/Source/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm
@@ -604,17 +604,18 @@ object srvPedidosProveedor: TsrvPedidosProveedor
Connection = 'IBX'
SQL =
'select V_PED_PROV_ARTICULOS.ID_PEDIDO,'#10' ARTICULOS.REFERENC' +
- 'IA,'#10' V_PED_PROV_ARTICULOS.ID_ARTICULO,'#10' ARTICULOS.DE' +
- 'SCRIPCION as CONCEPTO,'#10' V_PED_PROV_ARTICULOS.CANTIDAD_PEND' +
- 'IENTE as CANTIDAD,'#10' ARTICULOS_PROVEEDORES.REFERENCIA_PROV ' +
- 'as REFERENCIA_PROVEEDOR'#10#10'FROM V_PED_PROV_ARTICULOS'#10'LEFT JOIN ART' +
- 'ICULOS ON (ARTICULOS.ID = V_PED_PROV_ARTICULOS.ID_ARTICULO)'#10'LEFT' +
- ' JOIN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = V_PED_PROV_AR' +
- 'TICULOS.ID_PEDIDO)'#10'LEFT JOIN ARTICULOS_PROVEEDORES ON ((ARTICULO' +
- 'S_PROVEEDORES.ID_ARTICULO = ARTICULOS.ID) AND (ARTICULOS_PROVEED' +
- 'ORES.ID_PROVEEDOR = PEDIDOS_PROVEEDOR.ID_PROVEEDOR))'#10'WHERE (V_PE' +
- 'D_PROV_ARTICULOS.CANTIDAD_PENDIENTE <> 0)'#10'AND (V_PED_PROV_ARTICU' +
- 'LOS.ID_PEDIDO = :ID)'#10
+ 'IA,'#10' V_PED_PROV_ARTICULOS.ID_ARTICULO,'#10' COALESCE(ART' +
+ 'ICULOS.DESCRIPCION, '#39'"Articulos no dados de alta en la aplicaci'#243 +
+ 'n"'#39' ) as CONCEPTO,'#10' V_PED_PROV_ARTICULOS.CANTIDAD_PENDIEN' +
+ 'TE as CANTIDAD,'#10' ARTICULOS_PROVEEDORES.REFERENCIA_PROV as ' +
+ 'REFERENCIA_PROVEEDOR'#10#10'FROM V_PED_PROV_ARTICULOS'#10'LEFT JOIN ARTICU' +
+ 'LOS ON (ARTICULOS.ID = V_PED_PROV_ARTICULOS.ID_ARTICULO)'#10'LEFT JO' +
+ 'IN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = V_PED_PROV_ARTIC' +
+ 'ULOS.ID_PEDIDO)'#10'LEFT JOIN ARTICULOS_PROVEEDORES ON ((ARTICULOS_P' +
+ 'ROVEEDORES.ID_ARTICULO = ARTICULOS.ID) AND (ARTICULOS_PROVEEDORE' +
+ 'S.ID_PROVEEDOR = PEDIDOS_PROVEEDOR.ID_PROVEEDOR))'#10'WHERE (V_PED_P' +
+ 'ROV_ARTICULOS.CANTIDAD_PENDIENTE <> 0)'#10'AND (V_PED_PROV_ARTICULOS' +
+ '.ID_PEDIDO = :ID)'#10
StatementType = stSQL
ColumnMappings = <
item
diff --git a/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas b/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas
index baa3092b..9458ea2b 100644
--- a/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas
+++ b/Source/Modulos/Recibos de cliente/Reports/uRptRecibosCliente_Server.pas
@@ -241,7 +241,7 @@ begin
tbl_Cabecera.Active := True;
tbl_Compensados.Active := True;
- frxReport.LoadFromFile(DarRutaInformes + rptInforme, True);
+ frxReport.LoadFromFile(DarRutaInformes + tbl_Cabecera.FieldByName('ID_EMPRESA').AsString + '\' + rptInforme, True);
frxReport.PrepareReport(False);
finally
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"