diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql
index 442b6be..e3f6773 100644
--- a/Database/scripts/factuges.sql
+++ b/Database/scripts/factuges.sql
@@ -356,6 +356,7 @@ CREATE TABLE ALBARANES_PROVEEDOR (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
ID_PROVEEDOR TIPO_ID,
+ ID_CLIENTE_FINAL TIPO_ID,
ID_DIRECCION TIPO_ID,
PERSONA_CONTACTO_PROV VARCHAR(255),
FECHA_ALBARAN DATE,
@@ -1494,8 +1495,10 @@ FROM
CREATE VIEW V_ALBARANES_PROVEEDOR(
ID,
ID_EMPRESA,
- ID_PROVEEDOR,
+ ID_PROVEEDOR,
+ ID_CLIENTE_FINAL,
NOMBRE,
+ NOMBRE_CLIENTE_FINAL,
ID_DIRECCION,
PERSONA_CONTACTO_PROV,
FECHA_ALBARAN,
@@ -1542,7 +1545,9 @@ SELECT
ALBARANES_PROVEEDOR.ID,
ALBARANES_PROVEEDOR.ID_EMPRESA,
ALBARANES_PROVEEDOR.ID_PROVEEDOR,
- CONTACTOS.NOMBRE,
+ ALBARANES_PROVEEDOR.ID_CLIENTE_FINAL,
+ PROVEEDORES.NOMBRE,
+ CLIENTES.NOMBRE as NOMBRE_CLI_FINAL,
ALBARANES_PROVEEDOR.ID_DIRECCION,
ALBARANES_PROVEEDOR.PERSONA_CONTACTO_PROV,
ALBARANES_PROVEEDOR.FECHA_ALBARAN,
@@ -1586,7 +1591,8 @@ SELECT
REGISTRO_CORREOS.NUM_CORREOS
FROM
ALBARANES_PROVEEDOR
- INNER JOIN CONTACTOS ON (CONTACTOS.ID = ALBARANES_PROVEEDOR.ID_PROVEEDOR)
+ INNER JOIN CONTACTOS PROVEEDORES ON (PROVEEDORES.ID = ALBARANES_PROVEEDOR.ID_PROVEEDOR)
+ INNER JOIN CONTACTOS CLIENTES ON (CLIENTES.ID = ALBARANES_PROVEEDOR.ID_CLIENTE_FINAL)
LEFT OUTER JOIN ALBARANES_PROVEEDOR ALB_DEV ON (ALB_DEV.ID = ALBARANES_PROVEEDOR.ID_ALBARAN_DEV)
LEFT OUTER JOIN FACTURAS_PROVEEDOR FAC_PROV_ALB_DEV ON (FAC_PROV_ALB_DEV.ID = ALB_DEV.ID_FACTURA)
LEFT OUTER JOIN FACTURAS_PROVEEDOR ON (FACTURAS_PROVEEDOR.ID = ALBARANES_PROVEEDOR.ID_FACTURA)
@@ -1597,7 +1603,7 @@ FROM
ON ((IMPRESIONES.ID_TABLA = ALBARANES_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'ALBARANESPROVEEDOR'))
LEFT JOIN REGISTRO_CORREOS
ON ((REGISTRO_CORREOS.ID_TABLA = ALBARANES_PROVEEDOR.ID) AND (REGISTRO_CORREOS.TABLA = 'ALBARANESPROVEEDOR'))
-;
+;
diff --git a/Source/Modulos/Albaranes de proveedor/AlbaranesProveedor_Group.groupproj b/Source/Modulos/Albaranes de proveedor/AlbaranesProveedor_Group.groupproj
index 0816a9b..203cc0c 100644
--- a/Source/Modulos/Albaranes de proveedor/AlbaranesProveedor_Group.groupproj
+++ b/Source/Modulos/Albaranes de proveedor/AlbaranesProveedor_Group.groupproj
@@ -12,6 +12,7 @@
+
@@ -201,14 +202,23 @@
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/Source/Modulos/Albaranes de proveedor/Controller/uAlbaranesProveedorController.pas b/Source/Modulos/Albaranes de proveedor/Controller/uAlbaranesProveedorController.pas
index df9adb7..05c9798 100644
--- a/Source/Modulos/Albaranes de proveedor/Controller/uAlbaranesProveedorController.pas
+++ b/Source/Modulos/Albaranes de proveedor/Controller/uAlbaranesProveedorController.pas
@@ -5,7 +5,7 @@ interface
uses
Classes, SysUtils, uDADataTable, uEditorDBItem,
- uControllerBase, uIDataModuleAlbaranesProveedor, uProveedoresController,
+ uControllerBase, uIDataModuleAlbaranesProveedor, uProveedoresController, uClientesController,
uDetallesAlbaranProveedorController, uBizAlbaranesProveedor,
uBizDireccionesContacto, uBizInventario;
@@ -54,6 +54,7 @@ type
procedure CopiarDireccionEnvio (const ADireccionEnvio: IBizDireccionesContacto; AAlbaran: IBizAlbaranProveedor);
procedure QuitarDireccionEnvio(AAlbaran: IBizAlbaranProveedor);
procedure RecuperarProveedor(AAlbaran: IBizAlbaranProveedor);
+ procedure RecuperarClienteFinal(AAlbaran: IBizAlbaranProveedor);
procedure RecalcularImportes(AAlbaran: IBizAlbaranProveedor);
function EsModificable(AAlbaran: IBizAlbaranProveedor): Boolean;
@@ -84,11 +85,13 @@ type
protected
FDataModule : IDataModuleAlbaranesProveedor;
FProveedorController : IProveedoresController;
+ FClienteController : IClientesController;
FDetallesController : IDetallesAlbaranProveedorController;
function GetProveedorController: IProveedoresController;
procedure SetProveedorController(const Value: IProveedoresController);
procedure RecuperarProveedor(AAlbaran : IBizAlbaranProveedor);
+ procedure RecuperarClienteFinal(AAlbaran: IBizAlbaranProveedor);
function GetDetallesController: IDetallesAlbaranProveedorController;
procedure SetDetallesController(const Value: IDetallesAlbaranProveedorController);
@@ -575,6 +578,7 @@ begin
AsignarDataModule;
FProveedorController := TProveedoresController.Create;
+ FClienteController := TClientesController.Create;
FDetallesController := TDetallesAlbaranProveedorController.Create;
FDetallesController.addObservador(Self);
end;
@@ -610,6 +614,7 @@ destructor TAlbaranesProveedorController.Destroy;
begin
FDataModule := Nil;
FProveedorController := Nil;
+ FClienteController := Nil;
FDetallesController := Nil;
inherited;
end;
@@ -696,6 +701,11 @@ begin
and (AAlbaran.ID_PROVEEDOR <> AAlbaran.Proveedor.ID) then
AAlbaran.ID_PROVEEDOR := AAlbaran.Proveedor.ID;
+ if Assigned(AAlbaran.ClienteFinal)
+ and (AAlbaran.ID_CLIENTE_FINAL <> AAlbaran.ClienteFinal.ID) then
+ AAlbaran.ID_CLIENTE_FINAL := AAlbaran.ClienteFinal.ID;
+
+
Result := True;
finally
AAlbaran.Post;
@@ -956,6 +966,9 @@ begin
RecuperarProveedor(AAlbaran);
AAlbaran.Proveedor.DataTable.Active := True;
+ RecuperarClienteFinal(AAlbaran);
+ AAlbaran.ClienteFinal.DataTable.Active := True;
+
AFicheroTMP := DarFicheroPDFTemporal(EscapeIllegalChars(AAlbaran.REFERENCIA));
if not EsCadenaVacia(ADireccionEMail) then
@@ -1095,9 +1108,16 @@ begin
end;
end;
+procedure TAlbaranesProveedorController.RecuperarClienteFinal(
+ AAlbaran: IBizAlbaranProveedor);
+begin
+ AAlbaran._ClienteFinal := (FClienteController.Buscar(AAlbaran.ID_CLIENTE_FINAL) as IBizCliente);
+end;
+
procedure TAlbaranesProveedorController.RecuperarObjetos(AAlbaran: IBizAlbaranProveedor);
begin
RecuperarProveedor(AAlbaran);
+ RecuperarClienteFinal(AAlbaran);
end;
procedure TAlbaranesProveedorController.RecuperarProveedor(AAlbaran: IBizAlbaranProveedor);
@@ -1366,6 +1386,7 @@ begin
ShowHourglassCursor;
try
RecuperarProveedor(AAlbaran);
+ RecuperarClienteFinal(AAlbaran);
EnviarAlbaranPorEMail(AAlbaran, False, AAlbaran.Proveedor.EMAIL_ADMINISTRACION);
finally
HideHourglassCursor;
diff --git a/Source/Modulos/Albaranes de proveedor/Data/uDataModuleAlbaranesProveedor.dfm b/Source/Modulos/Albaranes de proveedor/Data/uDataModuleAlbaranesProveedor.dfm
index 25a2bda..b19f7a3 100644
--- a/Source/Modulos/Albaranes de proveedor/Data/uDataModuleAlbaranesProveedor.dfm
+++ b/Source/Modulos/Albaranes de proveedor/Data/uDataModuleAlbaranesProveedor.dfm
@@ -45,6 +45,10 @@ inherited DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
DataType = datInteger
DictionaryEntry = 'AlbaranesProveedor_ID_PROVEEDOR'
end
+ item
+ Name = 'ID_CLIENTE_FINAL'
+ DataType = datInteger
+ end
item
Name = 'NOMBRE'
DataType = datString
@@ -53,6 +57,11 @@ inherited DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
ServerAutoRefresh = True
DictionaryEntry = 'AlbaranesProveedor_NOMBRE'
end
+ item
+ Name = 'NOMBRE_CLIENTE_FINAL'
+ DataType = datString
+ Size = 255
+ end
item
Name = 'ID_DIRECCION'
DataType = datInteger
diff --git a/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorClient_Intf.pas b/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorClient_Intf.pas
index 9d36327..01c5cf5 100644
--- a/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorClient_Intf.pas
+++ b/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorClient_Intf.pas
@@ -3,15 +3,15 @@ unit schAlbaranesProveedorClient_Intf;
interface
uses
- Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf;
+ Classes, DB, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf;
const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
- RID_ListaAnosAlbaranes = '{98D7B136-B7B5-4752-A6A7-FA4DA78F9F91}';
- RID_AlbaranesProveedor = '{3D378181-80D9-4ACB-8CDD-405C735C9E64}';
- RID_AlbaranesProveedor_Detalles = '{21C597CD-B3DF-4B1F-9FD9-5C28713E211D}';
+ RID_ListaAnosAlbaranes = '{D863F588-DD74-4F1F-A7D4-15C0B8B3AFF5}';
+ RID_AlbaranesProveedor = '{A1E3DCE2-4616-4F91-A1CB-9283EB49201B}';
+ RID_AlbaranesProveedor_Detalles = '{67E55271-D427-4912-A94C-02C2784E4346}';
{ Data table names }
nme_ListaAnosAlbaranes = 'ListaAnosAlbaranes';
@@ -28,7 +28,9 @@ const
fld_AlbaranesProveedorID = 'ID';
fld_AlbaranesProveedorID_EMPRESA = 'ID_EMPRESA';
fld_AlbaranesProveedorID_PROVEEDOR = 'ID_PROVEEDOR';
+ fld_AlbaranesProveedorID_CLIENTE_FINAL = 'ID_CLIENTE_FINAL';
fld_AlbaranesProveedorNOMBRE = 'NOMBRE';
+ fld_AlbaranesProveedorNOMBRE_CLIENTE_FINAL = 'NOMBRE_CLIENTE_FINAL';
fld_AlbaranesProveedorID_DIRECCION = 'ID_DIRECCION';
fld_AlbaranesProveedorPERSONA_CONTACTO_PROV = 'PERSONA_CONTACTO_PROV';
fld_AlbaranesProveedorFECHA_ALBARAN = 'FECHA_ALBARAN';
@@ -75,48 +77,50 @@ const
idx_AlbaranesProveedorID = 0;
idx_AlbaranesProveedorID_EMPRESA = 1;
idx_AlbaranesProveedorID_PROVEEDOR = 2;
- idx_AlbaranesProveedorNOMBRE = 3;
- idx_AlbaranesProveedorID_DIRECCION = 4;
- idx_AlbaranesProveedorPERSONA_CONTACTO_PROV = 5;
- idx_AlbaranesProveedorFECHA_ALBARAN = 6;
- idx_AlbaranesProveedorREFERENCIA = 7;
- idx_AlbaranesProveedorREFERENCIA_PROVEEDOR = 8;
- idx_AlbaranesProveedorTIPO = 9;
- idx_AlbaranesProveedorID_ALBARAN_DEV = 10;
- idx_AlbaranesProveedorREFERENCIA_ALB_DEV = 11;
- idx_AlbaranesProveedorID_FAC_ALB_DEV = 12;
- idx_AlbaranesProveedorREFERENCIA_FAC_ALB_DEV = 13;
- idx_AlbaranesProveedorID_ALMACEN = 14;
- idx_AlbaranesProveedorTIPO_ALMACEN = 15;
- idx_AlbaranesProveedorNOMBRE_ALMACEN = 16;
- idx_AlbaranesProveedorID_PEDIDO = 17;
- idx_AlbaranesProveedorREF_PED_PROVEEDOR = 18;
- idx_AlbaranesProveedorID_FACTURA = 19;
- idx_AlbaranesProveedorREF_FACTURA = 20;
- idx_AlbaranesProveedorREF_FACTURA_PROV = 21;
- idx_AlbaranesProveedorCALLE = 22;
- idx_AlbaranesProveedorCODIGO_POSTAL = 23;
- idx_AlbaranesProveedorPOBLACION = 24;
- idx_AlbaranesProveedorPROVINCIA = 25;
- idx_AlbaranesProveedorPERSONA_CONTACTO = 26;
- idx_AlbaranesProveedorTELEFONO = 27;
- idx_AlbaranesProveedorIMPORTE_NETO = 28;
- idx_AlbaranesProveedorIMPORTE_PORTE = 29;
- idx_AlbaranesProveedorDESCUENTO = 30;
- idx_AlbaranesProveedorIMPORTE_DESCUENTO = 31;
- idx_AlbaranesProveedorBASE_IMPONIBLE = 32;
- idx_AlbaranesProveedorIVA = 33;
- idx_AlbaranesProveedorIMPORTE_IVA = 34;
- idx_AlbaranesProveedorIMPORTE_TOTAL = 35;
- idx_AlbaranesProveedorOBSERVACIONES = 36;
- idx_AlbaranesProveedorINCIDENCIAS = 37;
- idx_AlbaranesProveedorINCIDENCIAS_ACTIVAS = 38;
- idx_AlbaranesProveedorFECHA_ALTA = 39;
- idx_AlbaranesProveedorFECHA_MODIFICACION = 40;
- idx_AlbaranesProveedorUSUARIO = 41;
- idx_AlbaranesProveedorID_FORMA_PAGO = 42;
- idx_AlbaranesProveedorNUM_COPIAS = 43;
- idx_AlbaranesProveedorNUM_CORREOS = 44;
+ idx_AlbaranesProveedorID_CLIENTE_FINAL = 3;
+ idx_AlbaranesProveedorNOMBRE = 4;
+ idx_AlbaranesProveedorNOMBRE_CLIENTE_FINAL = 5;
+ idx_AlbaranesProveedorID_DIRECCION = 6;
+ idx_AlbaranesProveedorPERSONA_CONTACTO_PROV = 7;
+ idx_AlbaranesProveedorFECHA_ALBARAN = 8;
+ idx_AlbaranesProveedorREFERENCIA = 9;
+ idx_AlbaranesProveedorREFERENCIA_PROVEEDOR = 10;
+ idx_AlbaranesProveedorTIPO = 11;
+ idx_AlbaranesProveedorID_ALBARAN_DEV = 12;
+ idx_AlbaranesProveedorREFERENCIA_ALB_DEV = 13;
+ idx_AlbaranesProveedorID_FAC_ALB_DEV = 14;
+ idx_AlbaranesProveedorREFERENCIA_FAC_ALB_DEV = 15;
+ idx_AlbaranesProveedorID_ALMACEN = 16;
+ idx_AlbaranesProveedorTIPO_ALMACEN = 17;
+ idx_AlbaranesProveedorNOMBRE_ALMACEN = 18;
+ idx_AlbaranesProveedorID_PEDIDO = 19;
+ idx_AlbaranesProveedorREF_PED_PROVEEDOR = 20;
+ idx_AlbaranesProveedorID_FACTURA = 21;
+ idx_AlbaranesProveedorREF_FACTURA = 22;
+ idx_AlbaranesProveedorREF_FACTURA_PROV = 23;
+ idx_AlbaranesProveedorCALLE = 24;
+ idx_AlbaranesProveedorCODIGO_POSTAL = 25;
+ idx_AlbaranesProveedorPOBLACION = 26;
+ idx_AlbaranesProveedorPROVINCIA = 27;
+ idx_AlbaranesProveedorPERSONA_CONTACTO = 28;
+ idx_AlbaranesProveedorTELEFONO = 29;
+ idx_AlbaranesProveedorIMPORTE_NETO = 30;
+ idx_AlbaranesProveedorIMPORTE_PORTE = 31;
+ idx_AlbaranesProveedorDESCUENTO = 32;
+ idx_AlbaranesProveedorIMPORTE_DESCUENTO = 33;
+ idx_AlbaranesProveedorBASE_IMPONIBLE = 34;
+ idx_AlbaranesProveedorIVA = 35;
+ idx_AlbaranesProveedorIMPORTE_IVA = 36;
+ idx_AlbaranesProveedorIMPORTE_TOTAL = 37;
+ idx_AlbaranesProveedorOBSERVACIONES = 38;
+ idx_AlbaranesProveedorINCIDENCIAS = 39;
+ idx_AlbaranesProveedorINCIDENCIAS_ACTIVAS = 40;
+ idx_AlbaranesProveedorFECHA_ALTA = 41;
+ idx_AlbaranesProveedorFECHA_MODIFICACION = 42;
+ idx_AlbaranesProveedorUSUARIO = 43;
+ idx_AlbaranesProveedorID_FORMA_PAGO = 44;
+ idx_AlbaranesProveedorNUM_COPIAS = 45;
+ idx_AlbaranesProveedorNUM_CORREOS = 46;
{ AlbaranesProveedor_Detalles fields }
fld_AlbaranesProveedor_DetallesID = 'ID';
@@ -159,7 +163,7 @@ const
type
{ IListaAnosAlbaranes }
IListaAnosAlbaranes = interface(IDAStronglyTypedDataTable)
- ['{F9DF0229-A5B1-42A1-9FC4-EF535631B1C1}']
+ ['{129709FB-F54C-4830-9C08-F0B64D4A73F5}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@@ -173,7 +177,7 @@ type
end;
{ TListaAnosAlbaranesDataTableRules }
- TListaAnosAlbaranesDataTableRules = class(TIntfObjectDADataTableRules, IListaAnosAlbaranes)
+ TListaAnosAlbaranesDataTableRules = class(TDADataTableRules, IListaAnosAlbaranes)
private
protected
{ Property getters and setters }
@@ -194,7 +198,7 @@ type
{ IAlbaranesProveedor }
IAlbaranesProveedor = interface(IDAStronglyTypedDataTable)
- ['{6E9B6CFF-35D0-4A6E-A176-9B569D453557}']
+ ['{F6DA3DCB-4265-4AC4-9F2E-82E54071EE76}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -208,10 +212,18 @@ type
procedure SetID_PROVEEDORValue(const aValue: Integer);
function GetID_PROVEEDORIsNull: Boolean;
procedure SetID_PROVEEDORIsNull(const aValue: Boolean);
+ function GetID_CLIENTE_FINALValue: Integer;
+ procedure SetID_CLIENTE_FINALValue(const aValue: Integer);
+ function GetID_CLIENTE_FINALIsNull: Boolean;
+ procedure SetID_CLIENTE_FINALIsNull(const aValue: Boolean);
function GetNOMBREValue: String;
procedure SetNOMBREValue(const aValue: String);
function GetNOMBREIsNull: Boolean;
procedure SetNOMBREIsNull(const aValue: Boolean);
+ function GetNOMBRE_CLIENTE_FINALValue: String;
+ procedure SetNOMBRE_CLIENTE_FINALValue(const aValue: String);
+ function GetNOMBRE_CLIENTE_FINALIsNull: Boolean;
+ procedure SetNOMBRE_CLIENTE_FINALIsNull(const aValue: Boolean);
function GetID_DIRECCIONValue: Integer;
procedure SetID_DIRECCIONValue(const aValue: Integer);
function GetID_DIRECCIONIsNull: Boolean;
@@ -383,8 +395,12 @@ type
property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
property ID_PROVEEDOR: Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue;
property ID_PROVEEDORIsNull: Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull;
+ property ID_CLIENTE_FINAL: Integer read GetID_CLIENTE_FINALValue write SetID_CLIENTE_FINALValue;
+ property ID_CLIENTE_FINALIsNull: Boolean read GetID_CLIENTE_FINALIsNull write SetID_CLIENTE_FINALIsNull;
property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
+ property NOMBRE_CLIENTE_FINAL: String read GetNOMBRE_CLIENTE_FINALValue write SetNOMBRE_CLIENTE_FINALValue;
+ property NOMBRE_CLIENTE_FINALIsNull: Boolean read GetNOMBRE_CLIENTE_FINALIsNull write SetNOMBRE_CLIENTE_FINALIsNull;
property ID_DIRECCION: Integer read GetID_DIRECCIONValue write SetID_DIRECCIONValue;
property ID_DIRECCIONIsNull: Boolean read GetID_DIRECCIONIsNull write SetID_DIRECCIONIsNull;
property PERSONA_CONTACTO_PROV: String read GetPERSONA_CONTACTO_PROVValue write SetPERSONA_CONTACTO_PROVValue;
@@ -470,7 +486,7 @@ type
end;
{ TAlbaranesProveedorDataTableRules }
- TAlbaranesProveedorDataTableRules = class(TIntfObjectDADataTableRules, IAlbaranesProveedor)
+ TAlbaranesProveedorDataTableRules = class(TDADataTableRules, IAlbaranesProveedor)
private
f_OBSERVACIONES: IROStrings;
f_INCIDENCIAS: IROStrings;
@@ -490,10 +506,18 @@ type
procedure SetID_PROVEEDORValue(const aValue: Integer); virtual;
function GetID_PROVEEDORIsNull: Boolean; virtual;
procedure SetID_PROVEEDORIsNull(const aValue: Boolean); virtual;
+ function GetID_CLIENTE_FINALValue: Integer; virtual;
+ procedure SetID_CLIENTE_FINALValue(const aValue: Integer); virtual;
+ function GetID_CLIENTE_FINALIsNull: Boolean; virtual;
+ procedure SetID_CLIENTE_FINALIsNull(const aValue: Boolean); virtual;
function GetNOMBREValue: String; virtual;
procedure SetNOMBREValue(const aValue: String); virtual;
function GetNOMBREIsNull: Boolean; virtual;
procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
+ function GetNOMBRE_CLIENTE_FINALValue: String; virtual;
+ procedure SetNOMBRE_CLIENTE_FINALValue(const aValue: String); virtual;
+ function GetNOMBRE_CLIENTE_FINALIsNull: Boolean; virtual;
+ procedure SetNOMBRE_CLIENTE_FINALIsNull(const aValue: Boolean); virtual;
function GetID_DIRECCIONValue: Integer; virtual;
procedure SetID_DIRECCIONValue(const aValue: Integer); virtual;
function GetID_DIRECCIONIsNull: Boolean; virtual;
@@ -664,8 +688,12 @@ type
property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
property ID_PROVEEDOR: Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue;
property ID_PROVEEDORIsNull: Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull;
+ property ID_CLIENTE_FINAL: Integer read GetID_CLIENTE_FINALValue write SetID_CLIENTE_FINALValue;
+ property ID_CLIENTE_FINALIsNull: Boolean read GetID_CLIENTE_FINALIsNull write SetID_CLIENTE_FINALIsNull;
property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
+ property NOMBRE_CLIENTE_FINAL: String read GetNOMBRE_CLIENTE_FINALValue write SetNOMBRE_CLIENTE_FINALValue;
+ property NOMBRE_CLIENTE_FINALIsNull: Boolean read GetNOMBRE_CLIENTE_FINALIsNull write SetNOMBRE_CLIENTE_FINALIsNull;
property ID_DIRECCION: Integer read GetID_DIRECCIONValue write SetID_DIRECCIONValue;
property ID_DIRECCIONIsNull: Boolean read GetID_DIRECCIONIsNull write SetID_DIRECCIONIsNull;
property PERSONA_CONTACTO_PROV: String read GetPERSONA_CONTACTO_PROVValue write SetPERSONA_CONTACTO_PROVValue;
@@ -757,7 +785,7 @@ type
{ IAlbaranesProveedor_Detalles }
IAlbaranesProveedor_Detalles = interface(IDAStronglyTypedDataTable)
- ['{8D8878BC-70B7-4059-AE14-3CD914908425}']
+ ['{CD0E6D3A-FD12-485E-957A-AEEE0582BB42}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -867,7 +895,7 @@ type
end;
{ TAlbaranesProveedor_DetallesDataTableRules }
- TAlbaranesProveedor_DetallesDataTableRules = class(TIntfObjectDADataTableRules, IAlbaranesProveedor_Detalles)
+ TAlbaranesProveedor_DetallesDataTableRules = class(TDADataTableRules, IAlbaranesProveedor_Detalles)
private
protected
{ Property getters and setters }
@@ -1113,6 +1141,27 @@ begin
DataTable.Fields[idx_AlbaranesProveedorID_PROVEEDOR].AsVariant := Null;
end;
+function TAlbaranesProveedorDataTableRules.GetID_CLIENTE_FINALValue: Integer;
+begin
+ result := DataTable.Fields[idx_AlbaranesProveedorID_CLIENTE_FINAL].AsInteger;
+end;
+
+procedure TAlbaranesProveedorDataTableRules.SetID_CLIENTE_FINALValue(const aValue: Integer);
+begin
+ DataTable.Fields[idx_AlbaranesProveedorID_CLIENTE_FINAL].AsInteger := aValue;
+end;
+
+function TAlbaranesProveedorDataTableRules.GetID_CLIENTE_FINALIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_AlbaranesProveedorID_CLIENTE_FINAL].IsNull;
+end;
+
+procedure TAlbaranesProveedorDataTableRules.SetID_CLIENTE_FINALIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_AlbaranesProveedorID_CLIENTE_FINAL].AsVariant := Null;
+end;
+
function TAlbaranesProveedorDataTableRules.GetNOMBREValue: String;
begin
result := DataTable.Fields[idx_AlbaranesProveedorNOMBRE].AsString;
@@ -1134,6 +1183,27 @@ begin
DataTable.Fields[idx_AlbaranesProveedorNOMBRE].AsVariant := Null;
end;
+function TAlbaranesProveedorDataTableRules.GetNOMBRE_CLIENTE_FINALValue: String;
+begin
+ result := DataTable.Fields[idx_AlbaranesProveedorNOMBRE_CLIENTE_FINAL].AsString;
+end;
+
+procedure TAlbaranesProveedorDataTableRules.SetNOMBRE_CLIENTE_FINALValue(const aValue: String);
+begin
+ DataTable.Fields[idx_AlbaranesProveedorNOMBRE_CLIENTE_FINAL].AsString := aValue;
+end;
+
+function TAlbaranesProveedorDataTableRules.GetNOMBRE_CLIENTE_FINALIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_AlbaranesProveedorNOMBRE_CLIENTE_FINAL].IsNull;
+end;
+
+procedure TAlbaranesProveedorDataTableRules.SetNOMBRE_CLIENTE_FINALIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_AlbaranesProveedorNOMBRE_CLIENTE_FINAL].AsVariant := Null;
+end;
+
function TAlbaranesProveedorDataTableRules.GetID_DIRECCIONValue: Integer;
begin
result := DataTable.Fields[idx_AlbaranesProveedorID_DIRECCION].AsInteger;
diff --git a/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorServer_Intf.pas b/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorServer_Intf.pas
index db12ae4..87078a7 100644
--- a/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorServer_Intf.pas
+++ b/Source/Modulos/Albaranes de proveedor/Model/schAlbaranesProveedorServer_Intf.pas
@@ -9,14 +9,14 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
- RID_ListaAnosAlbaranesDelta = '{DB9DEA01-7FC2-4E0F-B54E-413F1154998B}';
- RID_AlbaranesProveedorDelta = '{9A475349-808C-47EC-BC60-A25DB945FA9D}';
- RID_AlbaranesProveedor_DetallesDelta = '{A4C8326F-19C5-4746-BDB7-71A170AF14E0}';
+ RID_ListaAnosAlbaranesDelta = '{14C5B976-CA00-4615-9651-B414EDAC591D}';
+ RID_AlbaranesProveedorDelta = '{C37BDD8D-FAD2-4F99-8CEB-EE981496C9F2}';
+ RID_AlbaranesProveedor_DetallesDelta = '{C77BA736-E7BC-409E-A5CB-DE950F03BBA6}';
type
{ IListaAnosAlbaranesDelta }
IListaAnosAlbaranesDelta = interface(IListaAnosAlbaranes)
- ['{DB9DEA01-7FC2-4E0F-B54E-413F1154998B}']
+ ['{14C5B976-CA00-4615-9651-B414EDAC591D}']
{ Property getters and setters }
function GetOldANOValue : String;
@@ -50,12 +50,14 @@ type
{ IAlbaranesProveedorDelta }
IAlbaranesProveedorDelta = interface(IAlbaranesProveedor)
- ['{9A475349-808C-47EC-BC60-A25DB945FA9D}']
+ ['{C37BDD8D-FAD2-4F99-8CEB-EE981496C9F2}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
function GetOldID_PROVEEDORValue : Integer;
+ function GetOldID_CLIENTE_FINALValue : Integer;
function GetOldNOMBREValue : String;
+ function GetOldNOMBRE_CLIENTE_FINALValue : String;
function GetOldID_DIRECCIONValue : Integer;
function GetOldPERSONA_CONTACTO_PROVValue : String;
function GetOldFECHA_ALBARANValue : DateTime;
@@ -102,7 +104,9 @@ type
property OldID : Integer read GetOldIDValue;
property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue;
property OldID_PROVEEDOR : Integer read GetOldID_PROVEEDORValue;
+ property OldID_CLIENTE_FINAL : Integer read GetOldID_CLIENTE_FINALValue;
property OldNOMBRE : String read GetOldNOMBREValue;
+ property OldNOMBRE_CLIENTE_FINAL : String read GetOldNOMBRE_CLIENTE_FINALValue;
property OldID_DIRECCION : Integer read GetOldID_DIRECCIONValue;
property OldPERSONA_CONTACTO_PROV : String read GetOldPERSONA_CONTACTO_PROVValue;
property OldFECHA_ALBARAN : DateTime read GetOldFECHA_ALBARANValue;
@@ -173,12 +177,24 @@ type
function GetOldID_PROVEEDORIsNull: Boolean; virtual;
procedure SetID_PROVEEDORValue(const aValue: Integer); virtual;
procedure SetID_PROVEEDORIsNull(const aValue: Boolean); virtual;
+ function GetID_CLIENTE_FINALValue: Integer; virtual;
+ function GetID_CLIENTE_FINALIsNull: Boolean; virtual;
+ function GetOldID_CLIENTE_FINALValue: Integer; virtual;
+ function GetOldID_CLIENTE_FINALIsNull: Boolean; virtual;
+ procedure SetID_CLIENTE_FINALValue(const aValue: Integer); virtual;
+ procedure SetID_CLIENTE_FINALIsNull(const aValue: Boolean); virtual;
function GetNOMBREValue: String; virtual;
function GetNOMBREIsNull: Boolean; virtual;
function GetOldNOMBREValue: String; virtual;
function GetOldNOMBREIsNull: Boolean; virtual;
procedure SetNOMBREValue(const aValue: String); virtual;
procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
+ function GetNOMBRE_CLIENTE_FINALValue: String; virtual;
+ function GetNOMBRE_CLIENTE_FINALIsNull: Boolean; virtual;
+ function GetOldNOMBRE_CLIENTE_FINALValue: String; virtual;
+ function GetOldNOMBRE_CLIENTE_FINALIsNull: Boolean; virtual;
+ procedure SetNOMBRE_CLIENTE_FINALValue(const aValue: String); virtual;
+ procedure SetNOMBRE_CLIENTE_FINALIsNull(const aValue: Boolean); virtual;
function GetID_DIRECCIONValue: Integer; virtual;
function GetID_DIRECCIONIsNull: Boolean; virtual;
function GetOldID_DIRECCIONValue: Integer; virtual;
@@ -437,10 +453,18 @@ type
property ID_PROVEEDORIsNull : Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull;
property OldID_PROVEEDOR : Integer read GetOldID_PROVEEDORValue;
property OldID_PROVEEDORIsNull : Boolean read GetOldID_PROVEEDORIsNull;
+ property ID_CLIENTE_FINAL : Integer read GetID_CLIENTE_FINALValue write SetID_CLIENTE_FINALValue;
+ property ID_CLIENTE_FINALIsNull : Boolean read GetID_CLIENTE_FINALIsNull write SetID_CLIENTE_FINALIsNull;
+ property OldID_CLIENTE_FINAL : Integer read GetOldID_CLIENTE_FINALValue;
+ property OldID_CLIENTE_FINALIsNull : Boolean read GetOldID_CLIENTE_FINALIsNull;
property NOMBRE : String read GetNOMBREValue write SetNOMBREValue;
property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
property OldNOMBRE : String read GetOldNOMBREValue;
property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull;
+ property NOMBRE_CLIENTE_FINAL : String read GetNOMBRE_CLIENTE_FINALValue write SetNOMBRE_CLIENTE_FINALValue;
+ property NOMBRE_CLIENTE_FINALIsNull : Boolean read GetNOMBRE_CLIENTE_FINALIsNull write SetNOMBRE_CLIENTE_FINALIsNull;
+ property OldNOMBRE_CLIENTE_FINAL : String read GetOldNOMBRE_CLIENTE_FINALValue;
+ property OldNOMBRE_CLIENTE_FINALIsNull : Boolean read GetOldNOMBRE_CLIENTE_FINALIsNull;
property ID_DIRECCION : Integer read GetID_DIRECCIONValue write SetID_DIRECCIONValue;
property ID_DIRECCIONIsNull : Boolean read GetID_DIRECCIONIsNull write SetID_DIRECCIONIsNull;
property OldID_DIRECCION : Integer read GetOldID_DIRECCIONValue;
@@ -614,7 +638,7 @@ type
{ IAlbaranesProveedor_DetallesDelta }
IAlbaranesProveedor_DetallesDelta = interface(IAlbaranesProveedor_Detalles)
- ['{A4C8326F-19C5-4746-BDB7-71A170AF14E0}']
+ ['{C77BA736-E7BC-409E-A5CB-DE950F03BBA6}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_ALBARANValue : Integer;
@@ -1010,6 +1034,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_PROVEEDOR] := Null;
end;
+function TAlbaranesProveedorBusinessProcessorRules.GetID_CLIENTE_FINALValue: Integer;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_CLIENTE_FINAL];
+end;
+
+function TAlbaranesProveedorBusinessProcessorRules.GetID_CLIENTE_FINALIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_CLIENTE_FINAL]);
+end;
+
+function TAlbaranesProveedorBusinessProcessorRules.GetOldID_CLIENTE_FINALValue: Integer;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorID_CLIENTE_FINAL];
+end;
+
+function TAlbaranesProveedorBusinessProcessorRules.GetOldID_CLIENTE_FINALIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorID_CLIENTE_FINAL]);
+end;
+
+procedure TAlbaranesProveedorBusinessProcessorRules.SetID_CLIENTE_FINALValue(const aValue: Integer);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_CLIENTE_FINAL] := aValue;
+end;
+
+procedure TAlbaranesProveedorBusinessProcessorRules.SetID_CLIENTE_FINALIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_CLIENTE_FINAL] := Null;
+end;
+
function TAlbaranesProveedorBusinessProcessorRules.GetNOMBREValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNOMBRE];
@@ -1041,6 +1096,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNOMBRE] := Null;
end;
+function TAlbaranesProveedorBusinessProcessorRules.GetNOMBRE_CLIENTE_FINALValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNOMBRE_CLIENTE_FINAL];
+end;
+
+function TAlbaranesProveedorBusinessProcessorRules.GetNOMBRE_CLIENTE_FINALIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNOMBRE_CLIENTE_FINAL]);
+end;
+
+function TAlbaranesProveedorBusinessProcessorRules.GetOldNOMBRE_CLIENTE_FINALValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorNOMBRE_CLIENTE_FINAL];
+end;
+
+function TAlbaranesProveedorBusinessProcessorRules.GetOldNOMBRE_CLIENTE_FINALIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorNOMBRE_CLIENTE_FINAL]);
+end;
+
+procedure TAlbaranesProveedorBusinessProcessorRules.SetNOMBRE_CLIENTE_FINALValue(const aValue: String);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNOMBRE_CLIENTE_FINAL] := aValue;
+end;
+
+procedure TAlbaranesProveedorBusinessProcessorRules.SetNOMBRE_CLIENTE_FINALIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNOMBRE_CLIENTE_FINAL] := Null;
+end;
+
function TAlbaranesProveedorBusinessProcessorRules.GetID_DIRECCIONValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_DIRECCION];
diff --git a/Source/Modulos/Albaranes de proveedor/Model/uBizAlbaranesProveedor.pas b/Source/Modulos/Albaranes de proveedor/Model/uBizAlbaranesProveedor.pas
index 61c9f68..cb29471 100644
--- a/Source/Modulos/Albaranes de proveedor/Model/uBizAlbaranesProveedor.pas
+++ b/Source/Modulos/Albaranes de proveedor/Model/uBizAlbaranesProveedor.pas
@@ -21,12 +21,22 @@ type
function GetProveedor : IBizProveedor;
property Proveedor : IBizProveedor read GetProveedor write SetProveedor;
+ procedure SetClienteFinal(AValue : IBizCliente);
+ function GetClienteFinal : IBizCliente;
+ property ClienteFinal : IBizCliente read GetClienteFinal write SetClienteFinal;
+
// Esta propidad es para que el controlador pueda acceder directamente
// a la propiedad Proveedor
procedure _SetProveedor(AValue : IBizProveedor);
function _GetProveedor : IBizProveedor;
property _Proveedor : IBizProveedor read _GetProveedor write _SetProveedor;
+ // Esta propidad es para que el controlador pueda acceder directamente
+ // a la propiedad Cliente Final
+ procedure _SetClienteFinal(AValue : IBizCliente);
+ function _GetCLienteFinal : IBizCLiente;
+ property _ClienteFinal : IBizCliente read _GetClienteFinal write _SetClienteFinal;
+
function GetDetalles: IBizDetallesAlbaranProveedor;
procedure SetDetalles(Value: IBizDetallesAlbaranProveedor);
property Detalles: IBizDetallesAlbaranProveedor read GetDetalles write SetDetalles;
@@ -41,6 +51,7 @@ type
protected
FSeleccionableInterface : ISeleccionable;
FProveedor : IBizProveedor;
+ FClienteFinal : IBizCliente;
FDetalles : IBizDetallesAlbaranProveedor;
FDetallesLink : TDADataSource;
@@ -50,6 +61,12 @@ type
procedure _SetProveedor(AValue : IBizProveedor);
function _GetProveedor : IBizProveedor;
+ procedure SetClienteFinal(AValue : IBizCliente);
+ function GetClienteFinal : IBizCliente;
+
+ procedure _SetClienteFinal(AValue : IBizCliente);
+ function _GetCLienteFinal : IBizCLiente;
+
function GetDetalles: IBizDetallesAlbaranProveedor;
procedure SetDetalles(Value: IBizDetallesAlbaranProveedor);
@@ -74,6 +91,9 @@ type
property Proveedor : IBizProveedor read GetProveedor write SetProveedor;
property _Proveedor : IBizProveedor read _GetProveedor write _SetProveedor;
+ property _ClienteFinal : IBizCliente read _GetClienteFinal write _SetClienteFinal;
+ property ClienteFinal : IBizCliente read GetClienteFinal write SetClienteFinal;
+
property Detalles: IBizDetallesAlbaranProveedor read GetDetalles write SetDetalles;
property SeleccionableInterface : ISeleccionable read FSeleccionableInterface
@@ -127,6 +147,7 @@ constructor TBizAlbaranProveedor.Create(aDataTable: TDADataTable);
begin
inherited;
FProveedor := Nil;
+ FClienteFinal := Nil;
with DataTable do
begin
@@ -150,6 +171,7 @@ end;
destructor TBizAlbaranProveedor.Destroy;
begin
FProveedor := NIL;
+ FClienteFinal := NIL;
FDetalles := NIL;
FDetallesLink.Free;
@@ -193,6 +215,11 @@ begin
CalcularImporteTotal;
end;
+function TBizAlbaranProveedor.GetClienteFinal: IBizCliente;
+begin
+ Result := FClienteFinal;
+end;
+
function TBizAlbaranProveedor.GetDetalles: IBizDetallesAlbaranProveedor;
begin
Result := FDetalles;
@@ -232,16 +259,53 @@ begin
end;
end;
+function TBizAlbaranProveedor._GetCLienteFinal: IBizCLiente;
+begin
+ Result := FClienteFinal;
+end;
+
function TBizAlbaranProveedor._GetProveedor: IBizProveedor;
begin
Result := FProveedor;
end;
+procedure TBizAlbaranProveedor._SetClienteFinal(AValue: IBizCliente);
+begin
+ FClienteFinal := AValue;
+end;
+
procedure TBizAlbaranProveedor._SetProveedor(AValue: IBizProveedor);
begin
FProveedor := AValue;
end;
+procedure TBizAlbaranProveedor.SetClienteFinal(AValue: IBizCliente);
+var
+ bEnEdicion : Boolean;
+begin
+ FClienteFinal := AValue;
+
+ if Assigned(FClienteFinal) then
+ begin
+ if not FClienteFinal.DataTable.Active then
+ FClienteFinal.DataTable.Active := True;
+
+ if Self.ID_CLIENTE_FINAL <> FClienteFinal.ID then
+ begin
+ bEnEdicion := (DataTable.State in dsEditModes);
+ if not bEnEdicion then
+ DataTable.Edit;
+
+ Self.ID_CLIENTE_FINAL := FClienteFinal.ID;
+
+ DataTable.Post; //Muy importante ya que es necesario hacer un post de la cabecera antes de añadir detalles
+ //si se quita el id de la cabecera y los detalles se desincroniza
+ if bEnEdicion then
+ DataTable.Edit;
+ end;
+ end;
+end;
+
procedure TBizAlbaranProveedor.SetDetalles(Value: IBizDetallesAlbaranProveedor);
begin
FDetalles := Value;
diff --git a/Source/Modulos/Albaranes de proveedor/Servidor/srvAlbaranesProveedor_Impl.dfm b/Source/Modulos/Albaranes de proveedor/Servidor/srvAlbaranesProveedor_Impl.dfm
index 8b49199..5bdd218 100644
--- a/Source/Modulos/Albaranes de proveedor/Servidor/srvAlbaranesProveedor_Impl.dfm
+++ b/Source/Modulos/Albaranes de proveedor/Servidor/srvAlbaranesProveedor_Impl.dfm
@@ -226,6 +226,14 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
item
DatasetField = 'NUM_CORREOS'
TableField = 'NUM_CORREOS'
+ end
+ item
+ DatasetField = 'ID_CLIENTE_FINAL'
+ TableField = 'ID_CLIENTE_FINAL'
+ end
+ item
+ DatasetField = 'NOMBRE_CLIENTE_FINAL'
+ TableField = 'NOMBRE_CLIENTE_FINAL'
end>
end>
Name = 'AlbaranesProveedor'
@@ -248,6 +256,10 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
DataType = datInteger
DictionaryEntry = 'AlbaranesProveedor_ID_PROVEEDOR'
end
+ item
+ Name = 'ID_CLIENTE_FINAL'
+ DataType = datInteger
+ end
item
Name = 'NOMBRE'
DataType = datString
@@ -255,6 +267,11 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
ServerAutoRefresh = True
DictionaryEntry = 'AlbaranesProveedor_NOMBRE'
end
+ item
+ Name = 'NOMBRE_CLIENTE_FINAL'
+ DataType = datString
+ Size = 255
+ end
item
Name = 'ID_DIRECCION'
DataType = datInteger
@@ -692,6 +709,11 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
DataType = datInteger
Value = ''
end
+ item
+ Name = 'ID_CLIENTE_FINAL'
+ DataType = datInteger
+ Value = ''
+ end
item
Name = 'ID_DIRECCION'
DataType = datInteger
@@ -860,26 +882,27 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
TargetTable = 'ALBARANES_PROVEEDOR'
SQL =
'INSERT INTO ALBARANES_PROVEEDOR ('#10' ID,'#10' ID_EMPRESA,'#10' ID' +
- '_PROVEEDOR,'#10' ID_DIRECCION,'#10' PERSONA_CONTACTO_PROV,'#10' FEC' +
- 'HA_ALBARAN,'#10' ID_PEDIDO,'#10' ID_FACTURA,'#10' TIPO,'#10' REFEREN' +
- 'CIA,'#10' REFERENCIA_PROVEEDOR,'#10' REF_FACTURA_PROV,'#10' CALLE,'#10 +
- ' CODIGO_POSTAL,'#10' POBLACION,'#10' PROVINCIA,'#10' PERSONA_CON' +
- 'TACTO,'#10' TELEFONO,'#10' BASE_IMPONIBLE,'#10' DESCUENTO,'#10' IMPO' +
- 'RTE_DESCUENTO,'#10' IVA,'#10' IMPORTE_IVA,'#10' IMPORTE_TOTAL,'#10' ' +
- 'OBSERVACIONES,'#10' INCIDENCIAS,'#10' INCIDENCIAS_ACTIVAS,'#10' FEC' +
- 'HA_ALTA,'#10' FECHA_MODIFICACION,'#10' USUARIO,'#10' ID_ALMACEN,'#10' ' +
- ' ID_FORMA_PAGO,'#10' IMPORTE_NETO,'#10' IMPORTE_PORTE,'#10' ID_ALB' +
- 'ARAN_DEV)'#10' VALUES ('#10' :ID,'#10' :ID_EMPRESA,'#10' :ID_PROVEEDOR' +
- ','#10' :ID_DIRECCION,'#10' :PERSONA_CONTACTO_PROV,'#10' :FECHA_ALBA' +
- 'RAN,'#10' :ID_PEDIDO,'#10' :ID_FACTURA,'#10' :TIPO,'#10' :REFERENCIA' +
- ','#10' :REFERENCIA_PROVEEDOR,'#10' :REF_FACTURA_PROV,'#10' :CALLE,'#10 +
- ' :CODIGO_POSTAL,'#10' :POBLACION,'#10' :PROVINCIA,'#10' :PERSONA' +
- '_CONTACTO,'#10' :TELEFONO,'#10' :BASE_IMPONIBLE,'#10' :DESCUENTO,'#10' ' +
- ' :IMPORTE_DESCUENTO,'#10' :IVA,'#10' :IMPORTE_IVA,'#10' :IMPORTE_' +
- 'TOTAL,'#10' :OBSERVACIONES,'#10' :INCIDENCIAS,'#10' :INCIDENCIAS_AC' +
- 'TIVAS,'#10' CURRENT_TIMESTAMP,'#10' CURRENT_TIMESTAMP,'#10' :USUARI' +
- 'O,'#10' :ID_ALMACEN,'#10' :ID_FORMA_PAGO,'#10' :IMPORTE_NETO,'#10' :' +
- 'IMPORTE_PORTE,'#10' :ID_ALBARAN_DEV);'#10
+ '_PROVEEDOR,'#10' ID_CLIENTE_FINAL,'#10' ID_DIRECCION,'#10' PERSONA_' +
+ 'CONTACTO_PROV,'#10' FECHA_ALBARAN,'#10' ID_PEDIDO,'#10' ID_FACTURA,' +
+ #10' TIPO,'#10' REFERENCIA,'#10' REFERENCIA_PROVEEDOR,'#10' REF_FAC' +
+ 'TURA_PROV,'#10' CALLE,'#10' CODIGO_POSTAL,'#10' POBLACION,'#10' PROV' +
+ 'INCIA,'#10' PERSONA_CONTACTO,'#10' TELEFONO,'#10' BASE_IMPONIBLE,'#10' ' +
+ ' DESCUENTO,'#10' IMPORTE_DESCUENTO,'#10' IVA,'#10' IMPORTE_IVA,'#10' ' +
+ ' IMPORTE_TOTAL,'#10' OBSERVACIONES,'#10' INCIDENCIAS,'#10' INCIDE' +
+ 'NCIAS_ACTIVAS,'#10' FECHA_ALTA,'#10' FECHA_MODIFICACION,'#10' USUAR' +
+ 'IO,'#10' ID_ALMACEN,'#10' ID_FORMA_PAGO,'#10' IMPORTE_NETO,'#10' IMP' +
+ 'ORTE_PORTE,'#10' ID_ALBARAN_DEV)'#10' VALUES ('#10' :ID,'#10' :ID_EMPR' +
+ 'ESA,'#10' :ID_PROVEEDOR,'#10' :ID_CLIENTE_FINAL,'#10' :ID_DIRECCION' +
+ ','#10' :PERSONA_CONTACTO_PROV,'#10' :FECHA_ALBARAN,'#10' :ID_PEDIDO' +
+ ','#10' :ID_FACTURA,'#10' :TIPO,'#10' :REFERENCIA,'#10' :REFERENCIA_P' +
+ 'ROVEEDOR,'#10' :REF_FACTURA_PROV,'#10' :CALLE,'#10' :CODIGO_POSTAL,' +
+ #10' :POBLACION,'#10' :PROVINCIA,'#10' :PERSONA_CONTACTO,'#10' :TEL' +
+ 'EFONO,'#10' :BASE_IMPONIBLE,'#10' :DESCUENTO,'#10' :IMPORTE_DESCUEN' +
+ 'TO,'#10' :IVA,'#10' :IMPORTE_IVA,'#10' :IMPORTE_TOTAL,'#10' :OBSERVA' +
+ 'CIONES,'#10' :INCIDENCIAS,'#10' :INCIDENCIAS_ACTIVAS,'#10' CURRENT_' +
+ 'TIMESTAMP,'#10' CURRENT_TIMESTAMP,'#10' :USUARIO,'#10' :ID_ALMACEN,' +
+ #10' :ID_FORMA_PAGO,'#10' :IMPORTE_NETO,'#10' :IMPORTE_PORTE,'#10' ' +
+ ':ID_ALBARAN_DEV);'#10
StatementType = stSQL
ColumnMappings = <>
end>
@@ -920,6 +943,11 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
DataType = datInteger
Value = ''
end
+ item
+ Name = 'ID_CLIENTE_FINAL'
+ DataType = datInteger
+ Value = ''
+ end
item
Name = 'ID_DIRECCION'
DataType = datInteger
@@ -1092,24 +1120,25 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
TargetTable = 'ALBARANES_PROVEEDOR'
SQL =
'UPDATE ALBARANES_PROVEEDOR'#10' SET'#10' ID = :ID,'#10' ID_EMPRESA = ' +
- ':ID_EMPRESA,'#10' ID_PROVEEDOR = :ID_PROVEEDOR,'#10' ID_DIRECCION ' +
- '= :ID_DIRECCION,'#10' PERSONA_CONTACTO_PROV = :PERSONA_CONTACTO_P' +
- 'ROV,'#10' FECHA_ALBARAN = :FECHA_ALBARAN,'#10' ID_PEDIDO = :ID_PED' +
- 'IDO,'#10' ID_FACTURA = :ID_FACTURA,'#10' TIPO = :TIPO,'#10' REFEREN' +
- 'CIA = :REFERENCIA,'#10' REFERENCIA_PROVEEDOR = :REFERENCIA_PROVEE' +
- 'DOR,'#10' REF_FACTURA_PROV = :REF_FACTURA_PROV,'#10' CALLE = :CALL' +
- 'E,'#10' CODIGO_POSTAL = :CODIGO_POSTAL,'#10' POBLACION = :POBLACIO' +
- 'N,'#10' PROVINCIA = :PROVINCIA,'#10' PERSONA_CONTACTO = :PERSONA_C' +
- 'ONTACTO,'#10' TELEFONO = :TELEFONO,'#10' BASE_IMPONIBLE = :BASE_IM' +
- 'PONIBLE,'#10' DESCUENTO = :DESCUENTO,'#10' IMPORTE_DESCUENTO = :IM' +
- 'PORTE_DESCUENTO,'#10' IVA = :IVA,'#10' IMPORTE_IVA = :IMPORTE_IVA,' +
- #10' IMPORTE_TOTAL = :IMPORTE_TOTAL,'#10' OBSERVACIONES = :OBSERV' +
- 'ACIONES,'#10' INCIDENCIAS = :INCIDENCIAS,'#10' INCIDENCIAS_ACTIVAS' +
- ' = :INCIDENCIAS_ACTIVAS,'#10' FECHA_MODIFICACION = CURRENT_TIMEST' +
- 'AMP,'#10' USUARIO = :USUARIO,'#10' ID_ALMACEN = :ID_ALMACEN,'#10' I' +
- 'D_FORMA_PAGO = :ID_FORMA_PAGO,'#10' IMPORTE_NETO = :IMPORTE_NETO,' +
- #10' IMPORTE_PORTE = :IMPORTE_PORTE,'#10' ID_ALBARAN_DEV = :ID_AL' +
- 'BARAN_DEV'#10' WHERE'#10' (ID = :OLD_ID);'#10
+ ':ID_EMPRESA,'#10' ID_PROVEEDOR = :ID_PROVEEDOR,'#10' ID_CLIENTE_FI' +
+ 'NAL = :ID_CLIENTE_FINAL,'#10' ID_DIRECCION = :ID_DIRECCION,'#10' P' +
+ 'ERSONA_CONTACTO_PROV = :PERSONA_CONTACTO_PROV,'#10' FECHA_ALBARAN' +
+ ' = :FECHA_ALBARAN,'#10' ID_PEDIDO = :ID_PEDIDO,'#10' ID_FACTURA = ' +
+ ':ID_FACTURA,'#10' TIPO = :TIPO,'#10' REFERENCIA = :REFERENCIA,'#10' ' +
+ ' REFERENCIA_PROVEEDOR = :REFERENCIA_PROVEEDOR,'#10' REF_FACTURA_P' +
+ 'ROV = :REF_FACTURA_PROV,'#10' CALLE = :CALLE,'#10' CODIGO_POSTAL =' +
+ ' :CODIGO_POSTAL,'#10' POBLACION = :POBLACION,'#10' PROVINCIA = :PR' +
+ 'OVINCIA,'#10' PERSONA_CONTACTO = :PERSONA_CONTACTO,'#10' TELEFONO ' +
+ '= :TELEFONO,'#10' BASE_IMPONIBLE = :BASE_IMPONIBLE,'#10' DESCUENTO' +
+ ' = :DESCUENTO,'#10' IMPORTE_DESCUENTO = :IMPORTE_DESCUENTO,'#10' I' +
+ 'VA = :IVA,'#10' IMPORTE_IVA = :IMPORTE_IVA,'#10' IMPORTE_TOTAL = :' +
+ 'IMPORTE_TOTAL,'#10' OBSERVACIONES = :OBSERVACIONES,'#10' INCIDENCI' +
+ 'AS = :INCIDENCIAS,'#10' INCIDENCIAS_ACTIVAS = :INCIDENCIAS_ACTIVA' +
+ 'S,'#10' FECHA_MODIFICACION = CURRENT_TIMESTAMP,'#10' USUARIO = :US' +
+ 'UARIO,'#10' ID_ALMACEN = :ID_ALMACEN,'#10' ID_FORMA_PAGO = :ID_FOR' +
+ 'MA_PAGO,'#10' IMPORTE_NETO = :IMPORTE_NETO,'#10' IMPORTE_PORTE = :' +
+ 'IMPORTE_PORTE,'#10' ID_ALBARAN_DEV = :ID_ALBARAN_DEV'#10' WHERE'#10' (I' +
+ 'D = :OLD_ID);'#10
StatementType = stSQL
ColumnMappings = <>
end>
diff --git a/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dpk b/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dpk
index 9deefa5..2c3bd64 100644
--- a/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dpk
+++ b/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dpk
@@ -41,7 +41,31 @@ requires
dxThemeD11,
dxGDIPlusD11,
dxCoreD11,
- vclx;
+ vclx,
+ dbrtl,
+ vcldb,
+ PNG_D10,
+ PngComponentsD10,
+ vclactnband,
+ cxExtEditorsD11,
+ cxDataD11,
+ cxEditorsD11,
+ vcljpg,
+ DataAbstract_Core_D11,
+ dsnap,
+ adortl,
+ RemObjects_Core_D11,
+ GUISDK_D11R,
+ designide,
+ xmlrtl,
+ dxLayoutControlD11,
+ dxComnD11,
+ JvStdCtrlsD11R,
+ JclVcl,
+ Jcl,
+ JvCoreD11R,
+ JvSystemD11R,
+ JvCtrlsD11R;
contains
uAlbaranesProveedorViewRegister in 'uAlbaranesProveedorViewRegister.pas',
@@ -62,6 +86,7 @@ contains
uEditorAlbaranesProveedorReport in 'uEditorAlbaranesProveedorReport.pas' {fEditorAlbaranesProveedorReport: TEditorAlbaranesProveedorReport},
uViewDatosYSeleccionProveedorAlbaran in 'uViewDatosYSeleccionProveedorAlbaran.pas' {frViewDatosYSeleccionProveedorAlbaran: TCustomView},
uDialogOpcionesImpresionAlbaranesProveedor in 'uDialogOpcionesImpresionAlbaranesProveedor.pas' {fDialogOpcionesImpresionAlbaranesProveedor: TfEditorElegirAlbaranesProveedor},
- uDialogListaAlbaranesProveedorEnvioEMail in 'uDialogListaAlbaranesProveedorEnvioEMail.pas' {fDialogListaAlbaranesProveedorEnvioEMail: Tform};
+ uDialogListaAlbaranesProveedorEnvioEMail in 'uDialogListaAlbaranesProveedorEnvioEMail.pas' {fDialogListaAlbaranesProveedorEnvioEMail: T},
+ uViewDatosYSeleccionClienteFinalAlbaran in 'uViewDatosYSeleccionClienteFinalAlbaran.pas' {frViewDatosYSeleccionClienteFinalAlbaran: TCustomView};
end.
diff --git a/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dproj b/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dproj
index b067c26..7271ddc 100644
--- a/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dproj
+++ b/Source/Modulos/Albaranes de proveedor/Views/AlbaranesProveedor_view.dproj
@@ -49,24 +49,50 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
T
@@ -121,6 +147,10 @@
TFrame
+
+
+ TCustomView
+
TCustomView
@@ -137,8 +167,6 @@
TFrame
-
-