diff --git a/Source/FactuGES.inc b/Source/FactuGES.inc
new file mode 100644
index 00000000..50642759
--- /dev/null
+++ b/Source/FactuGES.inc
@@ -0,0 +1 @@
+{DEFINE ALMACEN}
\ No newline at end of file
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk
index 45199c59..ca6c0024 100644
--- a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk
+++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk
@@ -32,7 +32,16 @@ requires
ApplicationBase,
Contactos_model,
Contactos_data,
- Contabilidad_controller;
+ Contabilidad_controller,
+ dbrtl,
+ RemObjects_Core_D11,
+ DataAbstract_Core_D11,
+ vcldb,
+ dsnap,
+ adortl,
+ cxLibraryD11,
+ dxThemeD11,
+ dxGDIPlusD11;
contains
uContactosController in 'uContactosController.pas',
@@ -62,6 +71,8 @@ contains
uFichasEmpleadoReportController in 'uFichasEmpleadoReportController.pas',
uIEditorFichasEmpleadoPreview in 'View\uIEditorFichasEmpleadoPreview.pas',
uEtiquetasContactosReportController in 'uEtiquetasContactosReportController.pas',
- uIEditorEtiquetasContactosPreview in 'View\uIEditorEtiquetasContactosPreview.pas';
+ uIEditorEtiquetasContactosPreview in 'View\uIEditorEtiquetasContactosPreview.pas',
+ uProcedenciasClienteController in 'uProcedenciasClienteController.pas',
+ uIEditorProcedenciasCliente in 'View\uIEditorProcedenciasCliente.pas';
end.
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
index 35ea573d..55487b2e 100644
--- a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
+++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
@@ -43,6 +43,15 @@
Package
FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0
+
+
+
+
+
+
+
+
+
JCL Debug IDE extension
JCL Project Analyzer
JCL Open and Save IDE dialogs with favorite folders
@@ -53,14 +62,6 @@
MainSource
-
-
-
-
-
-
-
-
@@ -70,7 +71,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -87,8 +104,11 @@
+
+
+
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.res b/Source/Modulos/Contactos/Controller/Contactos_controller.res
index 8b251f31..1641339f 100644
Binary files a/Source/Modulos/Contactos/Controller/Contactos_controller.res and b/Source/Modulos/Contactos/Controller/Contactos_controller.res differ
diff --git a/Source/Modulos/Contactos/Controller/View/uIEditorProcedenciasCliente.pas b/Source/Modulos/Contactos/Controller/View/uIEditorProcedenciasCliente.pas
new file mode 100644
index 00000000..6cd97f66
--- /dev/null
+++ b/Source/Modulos/Contactos/Controller/View/uIEditorProcedenciasCliente.pas
@@ -0,0 +1,23 @@
+unit uIEditorProcedenciasCliente;
+
+interface
+
+uses
+ uEditorDBBase, uBizProcedenciasCliente, uProcedenciasClienteController;
+
+type
+ IEditorProcedenciasCliente = interface(IEditorDBBase)
+ ['{E4FD5FEA-9771-40FD-AC69-600BE859ECCE}']
+ function GetProcedenciasCliente: IBizProcedenciaCliente;
+ procedure SetProcedenciasCliente(const Value: IBizProcedenciaCliente);
+ property ProcedenciasCliente: IBizProcedenciaCliente read GetProcedenciasCliente write SetProcedenciasCliente;
+
+ function GetController : IProcedenciasClienteController;
+ procedure SetController (const Value : IProcedenciasClienteController);
+ property Controller : IProcedenciasClienteController read GetController write SetController;
+ end;
+
+
+implementation
+
+end.
diff --git a/Source/Modulos/Contactos/Controller/uProcedenciasClienteController.pas b/Source/Modulos/Contactos/Controller/uProcedenciasClienteController.pas
new file mode 100644
index 00000000..6abd7b55
--- /dev/null
+++ b/Source/Modulos/Contactos/Controller/uProcedenciasClienteController.pas
@@ -0,0 +1,227 @@
+unit uProcedenciasClienteController;
+
+interface
+
+
+uses
+ Classes, SysUtils, uDADataTable, uControllerBase, uEditorDBItem,
+ uIDataModuleClientes, uBizProcedenciasCliente;
+
+type
+ IProcedenciasClienteController = interface(IObservador)
+ ['{C2D71CED-DCD6-47F1-8BCA-1027DA4A6385}']
+ function BuscarTodos: IBizProcedenciaCliente;
+ procedure VerTodos(AProcedenciasCliente: IBizProcedenciaCliente);
+ procedure Anadir(AProcedenciaCliente : IBizProcedenciaCliente);
+ function Eliminar(AProcedenciaCliente : IBizProcedenciaCliente): Boolean;
+ function Guardar(AProcedenciaCliente : IBizProcedenciaCliente): Boolean;
+ procedure DescartarCambios(AProcedenciaCliente : IBizProcedenciaCliente);
+ function Localizar(AProcedenciasCliente: IBizProcedenciaCliente; ADescripcion:String): Boolean;
+ function DarListaProcedenciasCliente: TStringList;
+ end;
+
+ TProcedenciasClienteController = class(TObservador, IProcedenciasClienteController)
+ protected
+ FDataModule : IDataModuleClientes;
+ procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); override;
+ function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
+ function ValidarProcedenciaCliente(AProcedenciaCliente: IBizProcedenciaCliente): Boolean;
+ procedure AsignarDataModule; virtual;
+ public
+ constructor Create; override;
+ destructor Destroy; override;
+
+ function Eliminar(AProcedenciaCliente : IBizProcedenciaCliente): Boolean;
+ function Guardar(AProcedenciaCliente : IBizProcedenciaCliente): Boolean;
+ procedure DescartarCambios(AProcedenciaCliente : IBizProcedenciaCliente); virtual;
+ procedure Anadir(AProcedenciaCliente : IBizProcedenciaCliente);
+ function BuscarTodos: IBizProcedenciaCliente;
+ procedure VerTodos(AProcedenciasCliente: IBizProcedenciaCliente);
+ function Localizar(AProcedenciasCliente: IBizProcedenciaCliente; ADescripcion:String): Boolean;
+ function DarListaProcedenciasCliente: TStringList;
+ end;
+
+implementation
+
+uses
+ cxControls, DB, uEditorRegistryUtils,
+ uIEditorProcedenciasCliente, uDataModuleClientes,
+ uDAInterfaces, uDataTableUtils,
+ uDateUtils, uROTypes, DateUtils, Controls, Windows, schContactosClient_Intf;
+
+{ TProcedenciasClienteController }
+
+procedure TProcedenciasClienteController.Anadir(AProcedenciaCliente: IBizProcedenciaCliente);
+begin
+ AProcedenciaCliente.Insert;
+end;
+
+procedure TProcedenciasClienteController.AsignarDataModule;
+begin
+ FDataModule := TDataModuleClientes.Create(Nil);
+end;
+
+function TProcedenciasClienteController.BuscarTodos: IBizProcedenciaCliente;
+begin
+ Result := FDataModule.GetProcedenciasCliente;
+end;
+
+constructor TProcedenciasClienteController.Create;
+begin
+ inherited;
+ AsignarDataModule;
+end;
+
+function TProcedenciasClienteController.CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
+begin
+ Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
+end;
+
+function TProcedenciasClienteController.DarListaProcedenciasCliente: TStringList;
+var
+ AProcedenciasCliente: IBizProcedenciaCliente;
+begin
+ AProcedenciasCliente := BuscarTodos;
+ AProcedenciasCliente.DataTable.Active := True;
+ Result := TStringList.Create;
+ try
+ with Result do
+ begin
+ AProcedenciasCliente.DataTable.First;
+ while not AProcedenciasCliente.DataTable.EOF do
+ begin
+ Add(AProcedenciasCliente.DESCRIPCION);
+ AProcedenciasCliente.DataTable.Next;
+ end;
+ end;
+ finally
+ AProcedenciasCliente := NIL;
+ end;
+end;
+
+procedure TProcedenciasClienteController.DescartarCambios(AProcedenciaCliente: IBizProcedenciaCliente);
+begin
+ if not Assigned(AProcedenciaCliente) then
+ raise Exception.Create ('ProcedenciaCliente no asignado');
+
+ ShowHourglassCursor;
+ try
+ if (AProcedenciaCliente.State in dsEditModes) then
+ AProcedenciaCliente.Cancel;
+
+ AProcedenciaCliente.DataTable.CancelUpdates;
+ finally
+ HideHourglassCursor;
+ end;
+end;
+
+destructor TProcedenciasClienteController.Destroy;
+begin
+ FDataModule := Nil;
+ inherited;
+end;
+
+function TProcedenciasClienteController.ValidarProcedenciaCliente(AProcedenciaCliente: IBizProcedenciaCliente): Boolean;
+begin
+ Result := False;
+
+ if not Assigned(AProcedenciaCliente) then
+ raise Exception.Create ('ProcedenciaCliente no asignada');
+
+ if (AProcedenciaCliente.DataTable.State in dsEditModes) then
+ AProcedenciaCliente.DataTable.Post;
+
+ if Length(AProcedenciaCliente.DESCRIPCION) = 0 then
+ raise Exception.Create('Debe indicar al menos la descripción de esta procedencia.');
+
+ Result := True;
+end;
+
+procedure TProcedenciasClienteController.VerTodos(AProcedenciasCliente: IBizProcedenciaCliente);
+var
+ AEditor : IEditorProcedenciasCliente;
+begin
+ AEditor := NIL;
+ ShowHourglassCursor;
+ try
+ CreateEditor('EditorProcedenciasCliente', IEditorProcedenciasCliente, AEditor);
+ if Assigned(AEditor) then
+ with AEditor do
+ begin
+ Controller := Self; //OJO ORDEN MUY IMPORTANTE
+ ProcedenciasCliente := AProcedenciasCliente;
+ ShowModal;
+ Release;
+ end;
+ finally
+ AEditor := NIL;
+ HideHourglassCursor;
+ end;
+end;
+
+function TProcedenciasClienteController.Eliminar(AProcedenciaCliente: IBizProcedenciaCliente): Boolean;
+begin
+ Result := False;
+
+ if not Assigned(AProcedenciaCliente) then
+ raise Exception.Create ('ProcedenciaCliente no asignada');
+
+ ShowHourglassCursor;
+ try
+ if (AProcedenciaCliente.State in dsEditModes) then
+ AProcedenciaCliente.Cancel;
+
+ AProcedenciaCliente.Delete;
+ AProcedenciaCliente.DataTable.ApplyUpdates;
+ HideHourglassCursor;
+ Result := True;
+ finally
+ HideHourglassCursor;
+ end;
+end;
+
+procedure TProcedenciasClienteController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
+begin
+ inherited;
+//
+end;
+
+function TProcedenciasClienteController.Guardar(AProcedenciaCliente: IBizProcedenciaCliente): Boolean;
+begin
+ Result := False;
+
+ if ValidarProcedenciaCliente(AProcedenciaCliente) then
+ begin
+ ShowHourglassCursor;
+ try
+ if (AProcedenciaCliente.DataTable.State in dsEditModes) then
+ AProcedenciaCliente.DataTable.Post;
+
+ AProcedenciaCliente.DataTable.ApplyUpdates;
+
+ Result := True;
+ finally
+ HideHourglassCursor;
+ end;
+ end;
+end;
+
+function TProcedenciasClienteController.Localizar(AProcedenciasCliente: IBizProcedenciaCliente; ADescripcion: String): Boolean;
+begin
+ Result := True;
+ ShowHourglassCursor;
+ try
+ with AProcedenciasCliente.DataTable do
+ begin
+ DisableControls;
+ First;
+ if not Locate(fld_ProcedenciasClienteDESCRIPCION, ADescripcion, []) then
+ Result := False;
+ EnableControls;
+ end;
+ finally
+ HideHourglassCursor;
+ end;
+end;
+
+end.
diff --git a/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm b/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm
index 5cd9d287..b83851e7 100644
--- a/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm
+++ b/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm
@@ -1,6 +1,6 @@
inherited DataModuleClientes: TDataModuleClientes
Height = 325
- Width = 701
+ Width = 738
inherited rda_Contactos: TDARemoteDataAdapter
Top = 79
end
@@ -249,6 +249,13 @@ inherited DataModuleClientes: TDataModuleClientes
DataType = datInteger
DisplayLabel = 'Clientes_IGNORAR_CONTABILIDAD'
DictionaryEntry = 'Clientes_IGNORAR_CONTABILIDAD'
+ end
+ item
+ Name = 'PROCEDENCIA_CLIENTE'
+ DataType = datString
+ Size = 255
+ DisplayLabel = 'Clientes_PROCEDENCIA_CLIENTE'
+ DictionaryEntry = 'Clientes_PROCEDENCIA_CLIENTE'
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
@@ -414,4 +421,28 @@ inherited DataModuleClientes: TDataModuleClientes
Left = 600
Top = 16
end
+ object tbl_ProcedenciasCliente: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 255
+ end>
+ Params = <>
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteDataAdapter = rda_Contactos
+ DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
+ MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
+ LogicalName = 'ProcedenciasCliente'
+ IndexDefs = <>
+ Left = 648
+ Top = 168
+ end
+ object ds_ProcedenciasCliente: TDADataSource
+ DataSet = tbl_ProcedenciasCliente.Dataset
+ DataTable = tbl_ProcedenciasCliente
+ Left = 648
+ Top = 224
+ end
end
diff --git a/Source/Modulos/Contactos/Data/uDataModuleClientes.pas b/Source/Modulos/Contactos/Data/uDataModuleClientes.pas
index 9d9ff00e..fef2facf 100644
--- a/Source/Modulos/Contactos/Data/uDataModuleClientes.pas
+++ b/Source/Modulos/Contactos/Data/uDataModuleClientes.pas
@@ -7,8 +7,8 @@ uses
DB, uDADataTable, uDAScriptingProvider,
uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService,
uROClient, uROBinMessage, uROWinInetHttpChannel, uBizClientesDescuentos,
- uBizGruposCliente, uBizContactos, uBizSubCuentasContacto, uDataModuleContactos,
- uIDataModuleClientes, uDADesigntimeCall, uDARemoteDataAdapter,
+ uBizGruposCliente, uBizProcedenciasCliente, uBizContactos, uBizSubCuentasContacto,
+ uDataModuleContactos, uIDataModuleClientes, uDADesigntimeCall, uDARemoteDataAdapter,
uDADataStreamer, uRODynamicRequest, uDAInterfaces, uDAMemDataTable,
uDABin2DataStreamer, uControllerBase, uBizContactosDatosBancarios,
uIDataModuleContactos;
@@ -23,6 +23,8 @@ type
ds_GruposCliente: TDADataSource;
tbl_SubCuentasContacto: TDAMemDataTable;
ds_SubCuentasContacto: TDADataSource;
+ tbl_ProcedenciasCliente: TDAMemDataTable;
+ ds_ProcedenciasCliente: TDADataSource;
protected
function _GetDescuentos: IBizClienteDescuentos;
function _GetSubCuentas: IBizSubCuentasContacto;
@@ -32,6 +34,7 @@ type
function GetItems : IBizCliente;
function GetItemsTiendaWeb : IBizCliente;
function GetGruposCliente : IBizGrupoCliente;
+ function GetProcedenciasCliente : IBizProcedenciaCliente;
end;
implementation
@@ -127,6 +130,20 @@ begin
end;
end;
+function TDataModuleClientes.GetProcedenciasCliente: IBizProcedenciaCliente;
+var
+ AProcedenciaCliente : TDAMemDataTable;
+begin
+ ShowHourglassCursor;
+ try
+ AProcedenciaCliente := CloneDataTable(tbl_ProcedenciasCliente);
+ AProcedenciaCliente.BusinessRulesID := BIZ_CLIENT_PROCEDENCIASCLIENTE;
+ Result := (AProcedenciaCliente as IBizProcedenciaCliente);
+ finally
+ HideHourglassCursor;
+ end;
+end;
+
function TDataModuleClientes.NewItem: IBizCliente;
begin
Result := GetItem(ID_NULO)
diff --git a/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm b/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm
index ebd66f15..06ff30c9 100644
--- a/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm
+++ b/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm
@@ -220,6 +220,7 @@ inherited DataModuleProveedores: TDataModuleProveedores
item
Name = 'GRUPO_PROVEEDOR'
DataType = datString
+ Size = 255
DisplayLabel = 'Grupo proveedor'
DictionaryEntry = 'Proveedores_GRUPO_PROVEEDOR'
end
diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dpk b/Source/Modulos/Contactos/Model/Contactos_model.dpk
index 6c49acaf..4d6a62e5 100644
--- a/Source/Modulos/Contactos/Model/Contactos_model.dpk
+++ b/Source/Modulos/Contactos/Model/Contactos_model.dpk
@@ -54,6 +54,7 @@ contains
uIDataModuleEtiquetasContactosReport in 'Data\uIDataModuleEtiquetasContactosReport.pas',
schContactosClient_Intf in 'schContactosClient_Intf.pas',
schContactosServer_Intf in 'schContactosServer_Intf.pas',
- uBizSubCuentasContacto in 'uBizSubCuentasContacto.pas';
+ uBizSubCuentasContacto in 'uBizSubCuentasContacto.pas',
+ uBizProcedenciasCliente in 'uBizProcedenciasCliente.pas';
end.
diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dproj b/Source/Modulos/Contactos/Model/Contactos_model.dproj
index c4958cc7..eaab2bdc 100644
--- a/Source/Modulos/Contactos/Model/Contactos_model.dproj
+++ b/Source/Modulos/Contactos/Model/Contactos_model.dproj
@@ -74,6 +74,7 @@
+
diff --git a/Source/Modulos/Contactos/Model/Contactos_model.res b/Source/Modulos/Contactos/Model/Contactos_model.res
index 8b251f31..1641339f 100644
Binary files a/Source/Modulos/Contactos/Model/Contactos_model.res and b/Source/Modulos/Contactos/Model/Contactos_model.res differ
diff --git a/Source/Modulos/Contactos/Model/Data/uIDataModuleClientes.pas b/Source/Modulos/Contactos/Model/Data/uIDataModuleClientes.pas
index f61e519e..b23850d7 100644
--- a/Source/Modulos/Contactos/Model/Data/uIDataModuleClientes.pas
+++ b/Source/Modulos/Contactos/Model/Data/uIDataModuleClientes.pas
@@ -3,7 +3,8 @@ unit uIDataModuleClientes;
interface
uses
- uBizContactos, uIDataModuleContactos, uBizGruposCliente, uBizContactosDatosBancarios;
+ uBizContactos, uIDataModuleContactos, uBizGruposCliente, uBizProcedenciasCliente,
+ uBizContactosDatosBancarios;
type
IDataModuleClientes = interface(IDataModuleContactos)
@@ -16,6 +17,7 @@ type
function GetItems : IBizCliente;
function GetItemsTiendaWeb : IBizCliente;
function GetGruposCliente : IBizGrupoCliente;
+ function GetProcedenciasCliente : IBizProcedenciaCliente;
end;
diff --git a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas
index 72b94746..24ac6125 100644
--- a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas
+++ b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas
@@ -3,24 +3,25 @@ unit schContactosClient_Intf;
interface
uses
- Classes, DB, schBase_Intf, SysUtils, uROClasses, uDADataTable, FmtBCD, uROXMLIntf;
+ Classes, DB, SysUtils, uROClasses, 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_SubCuentasContacto = '{4E9A4351-6088-4C3D-89BE-5C2045F3142E}';
- RID_Contactos = '{7488A5BA-619B-4BAB-A118-BCED33A85729}';
- RID_GruposCliente = '{3581CC88-21B9-4C30-A3AE-7565C18C3290}';
- RID_DatosBancarios = '{039C7134-AC7B-45EE-B678-BF31C4266A3E}';
- RID_Clientes = '{39651BB6-A46C-4E18-8370-B7E381F5E438}';
- RID_Proveedores = '{4E9E99D2-0F82-481A-9BD2-6178349034A0}';
- RID_Empleados = '{C0B6AA11-68AE-4658-9308-8C29C5F0936D}';
- RID_DireccionesContacto = '{EF3A2758-0CBE-4482-8770-91AD4F993A04}';
- RID_ClientesDescuentos = '{D64874F0-7499-4AC8-B3F1-DC1D63923CE9}';
- RID_GruposProveedor = '{86B9993A-ECB2-43E3-BA37-2C8DD53497A8}';
- RID_GruposEmpleado = '{877D71DA-AE8B-4B26-969F-AAA4DB1405D1}';
- RID_Contactos_Refresh = '{8758F490-8118-4E61-AC27-3925D66A739C}';
+ RID_SubCuentasContacto = '{453B7BA1-323F-417A-8B42-F56AAB9BC9ED}';
+ RID_Contactos = '{6EA22F95-6490-4206-AEFC-464E2445D2F6}';
+ RID_GruposCliente = '{51F47DED-0BF8-43BE-AF8B-BEB6D5C15CE9}';
+ RID_DatosBancarios = '{674DE4ED-7DD8-4D41-BE3C-622E01369871}';
+ RID_Clientes = '{9FB6B0C3-74B1-4017-BAB3-8C34BA5188D9}';
+ RID_Proveedores = '{C7CA7A82-6DFA-4038-B95F-FFF7029458A1}';
+ RID_Empleados = '{01B148F8-50BB-4463-97A0-AF187AEDB96E}';
+ RID_DireccionesContacto = '{2359A18E-A102-43D1-9921-22654D3DC341}';
+ RID_ClientesDescuentos = '{29CCEAE4-2C27-4206-8993-DBBE74270B7C}';
+ RID_ProcedenciasCliente = '{E5CFB5E4-8EC2-406C-91D7-F1228EE19FF9}';
+ RID_GruposProveedor = '{61FBEB42-8215-4F10-A664-73961B921082}';
+ RID_GruposEmpleado = '{1CDC7280-FFB2-4288-AEE4-D80883BD9E17}';
+ RID_Contactos_Refresh = '{52B9CB54-1DF8-4CC7-ACB7-E52676886614}';
{ Data table names }
nme_SubCuentasContacto = 'SubCuentasContacto';
@@ -32,6 +33,7 @@ const
nme_Empleados = 'Empleados';
nme_DireccionesContacto = 'DireccionesContacto';
nme_ClientesDescuentos = 'ClientesDescuentos';
+ nme_ProcedenciasCliente = 'ProcedenciasCliente';
nme_GruposProveedor = 'GruposProveedor';
nme_GruposEmpleado = 'GruposEmpleado';
nme_Contactos_Refresh = 'Contactos_Refresh';
@@ -166,6 +168,7 @@ const
fld_ClientesTIENDA_WEB = 'TIENDA_WEB';
fld_ClientesCODIGO_ASIGNADO = 'CODIGO_ASIGNADO';
fld_ClientesIGNORAR_CONTABILIDAD = 'IGNORAR_CONTABILIDAD';
+ fld_ClientesPROCEDENCIA_CLIENTE = 'PROCEDENCIA_CLIENTE';
{ Clientes field indexes }
idx_ClientesID = 0;
@@ -203,6 +206,7 @@ const
idx_ClientesTIENDA_WEB = 32;
idx_ClientesCODIGO_ASIGNADO = 33;
idx_ClientesIGNORAR_CONTABILIDAD = 34;
+ idx_ClientesPROCEDENCIA_CLIENTE = 35;
{ Proveedores fields }
fld_ProveedoresID = 'ID';
@@ -390,6 +394,12 @@ const
idx_ClientesDescuentosNOMBRE = 3;
idx_ClientesDescuentosDESCUENTO = 4;
+ { ProcedenciasCliente fields }
+ fld_ProcedenciasClienteDESCRIPCION = 'DESCRIPCION';
+
+ { ProcedenciasCliente field indexes }
+ idx_ProcedenciasClienteDESCRIPCION = 0;
+
{ GruposProveedor fields }
fld_GruposProveedorDESCRIPCION = 'DESCRIPCION';
@@ -451,7 +461,7 @@ const
type
{ ISubCuentasContacto }
ISubCuentasContacto = interface(IDAStronglyTypedDataTable)
- ['{67E58E93-5163-41A9-86BD-6D2721F65D18}']
+ ['{636CE6F2-F39C-4581-B6EE-74C8DC674858}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -495,7 +505,7 @@ type
end;
{ TSubCuentasContactoDataTableRules }
- TSubCuentasContactoDataTableRules = class(TIntfObjectDADataTableRules, ISubCuentasContacto)
+ TSubCuentasContactoDataTableRules = class(TDADataTableRules, ISubCuentasContacto)
private
protected
{ Property getters and setters }
@@ -546,7 +556,7 @@ type
{ IContactos }
IContactos = interface(IDAStronglyTypedDataTable)
- ['{FCE955D0-D867-4E9E-AEF2-9CAEA0B6E1DC}']
+ ['{F8E773E0-524E-471D-9D40-E2E1F76CEB23}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -691,7 +701,7 @@ type
end;
{ TContactosDataTableRules }
- TContactosDataTableRules = class(TIntfObjectDADataTableRules, IContactos)
+ TContactosDataTableRules = class(TDADataTableRules, IContactos)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -845,7 +855,7 @@ type
{ IGruposCliente }
IGruposCliente = interface(IDAStronglyTypedDataTable)
- ['{A2060827-0FC3-452C-9EC0-A58E54F95402}']
+ ['{57B3966E-B7C9-4DBF-8ADE-A988221D08FB}']
{ Property getters and setters }
function GetDESCRIPCIONValue: String;
procedure SetDESCRIPCIONValue(const aValue: String);
@@ -859,7 +869,7 @@ type
end;
{ TGruposClienteDataTableRules }
- TGruposClienteDataTableRules = class(TIntfObjectDADataTableRules, IGruposCliente)
+ TGruposClienteDataTableRules = class(TDADataTableRules, IGruposCliente)
private
protected
{ Property getters and setters }
@@ -880,7 +890,7 @@ type
{ IDatosBancarios }
IDatosBancarios = interface(IDAStronglyTypedDataTable)
- ['{91DB169A-8525-43B6-BCA9-DED818C22BFF}']
+ ['{C11E1061-38CA-4050-843F-A4BCA66BB16A}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -942,7 +952,7 @@ type
end;
{ TDatosBancariosDataTableRules }
- TDatosBancariosDataTableRules = class(TIntfObjectDADataTableRules, IDatosBancarios)
+ TDatosBancariosDataTableRules = class(TDADataTableRules, IDatosBancarios)
private
protected
{ Property getters and setters }
@@ -1011,7 +1021,7 @@ type
{ IClientes }
IClientes = interface(IDAStronglyTypedDataTable)
- ['{EEA29F68-9A96-461E-9D7B-1AA1D0E26123}']
+ ['{4BE233B1-CAA0-4046-90DD-AE98874CA216}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -1152,6 +1162,10 @@ type
procedure SetIGNORAR_CONTABILIDADValue(const aValue: Integer);
function GetIGNORAR_CONTABILIDADIsNull: Boolean;
procedure SetIGNORAR_CONTABILIDADIsNull(const aValue: Boolean);
+ function GetPROCEDENCIA_CLIENTEValue: String;
+ procedure SetPROCEDENCIA_CLIENTEValue(const aValue: String);
+ function GetPROCEDENCIA_CLIENTEIsNull: Boolean;
+ procedure SetPROCEDENCIA_CLIENTEIsNull(const aValue: Boolean);
{ Properties }
@@ -1225,10 +1239,12 @@ type
property CODIGO_ASIGNADOIsNull: Boolean read GetCODIGO_ASIGNADOIsNull write SetCODIGO_ASIGNADOIsNull;
property IGNORAR_CONTABILIDAD: Integer read GetIGNORAR_CONTABILIDADValue write SetIGNORAR_CONTABILIDADValue;
property IGNORAR_CONTABILIDADIsNull: Boolean read GetIGNORAR_CONTABILIDADIsNull write SetIGNORAR_CONTABILIDADIsNull;
+ property PROCEDENCIA_CLIENTE: String read GetPROCEDENCIA_CLIENTEValue write SetPROCEDENCIA_CLIENTEValue;
+ property PROCEDENCIA_CLIENTEIsNull: Boolean read GetPROCEDENCIA_CLIENTEIsNull write SetPROCEDENCIA_CLIENTEIsNull;
end;
{ TClientesDataTableRules }
- TClientesDataTableRules = class(TIntfObjectDADataTableRules, IClientes)
+ TClientesDataTableRules = class(TDADataTableRules, IClientes)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -1373,6 +1389,10 @@ type
procedure SetIGNORAR_CONTABILIDADValue(const aValue: Integer); virtual;
function GetIGNORAR_CONTABILIDADIsNull: Boolean; virtual;
procedure SetIGNORAR_CONTABILIDADIsNull(const aValue: Boolean); virtual;
+ function GetPROCEDENCIA_CLIENTEValue: String; virtual;
+ procedure SetPROCEDENCIA_CLIENTEValue(const aValue: String); virtual;
+ function GetPROCEDENCIA_CLIENTEIsNull: Boolean; virtual;
+ procedure SetPROCEDENCIA_CLIENTEIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@@ -1445,6 +1465,8 @@ type
property CODIGO_ASIGNADOIsNull: Boolean read GetCODIGO_ASIGNADOIsNull write SetCODIGO_ASIGNADOIsNull;
property IGNORAR_CONTABILIDAD: Integer read GetIGNORAR_CONTABILIDADValue write SetIGNORAR_CONTABILIDADValue;
property IGNORAR_CONTABILIDADIsNull: Boolean read GetIGNORAR_CONTABILIDADIsNull write SetIGNORAR_CONTABILIDADIsNull;
+ property PROCEDENCIA_CLIENTE: String read GetPROCEDENCIA_CLIENTEValue write SetPROCEDENCIA_CLIENTEValue;
+ property PROCEDENCIA_CLIENTEIsNull: Boolean read GetPROCEDENCIA_CLIENTEIsNull write SetPROCEDENCIA_CLIENTEIsNull;
public
constructor Create(aDataTable: TDADataTable); override;
@@ -1454,7 +1476,7 @@ type
{ IProveedores }
IProveedores = interface(IDAStronglyTypedDataTable)
- ['{9EFD8DE5-E98C-4071-8CF6-E75A9AA9E3C3}']
+ ['{78D65CFD-5B95-4EBB-B4D6-AE67A41A26DC}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -1665,7 +1687,7 @@ type
end;
{ TProveedoresDataTableRules }
- TProveedoresDataTableRules = class(TIntfObjectDADataTableRules, IProveedores)
+ TProveedoresDataTableRules = class(TDADataTableRules, IProveedores)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -1885,7 +1907,7 @@ type
{ IEmpleados }
IEmpleados = interface(IDAStronglyTypedDataTable)
- ['{6A39017E-6CFF-4DA5-9685-9CA1F72AD052}']
+ ['{BABFCBDE-10A2-4F2F-8C00-FA5F273552BB}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -2068,7 +2090,7 @@ type
end;
{ TEmpleadosDataTableRules }
- TEmpleadosDataTableRules = class(TIntfObjectDADataTableRules, IEmpleados)
+ TEmpleadosDataTableRules = class(TDADataTableRules, IEmpleados)
private
f_NOTAS: IROStrings;
f_FORMACION_BASE: IROStrings;
@@ -2268,7 +2290,7 @@ type
{ IDireccionesContacto }
IDireccionesContacto = interface(IDAStronglyTypedDataTable)
- ['{FC464110-B68D-47F7-B110-E8F0CAB02469}']
+ ['{A1E4440E-7C2B-47D0-9F5B-1C05EA949260}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -2371,7 +2393,7 @@ type
end;
{ TDireccionesContactoDataTableRules }
- TDireccionesContactoDataTableRules = class(TIntfObjectDADataTableRules, IDireccionesContacto)
+ TDireccionesContactoDataTableRules = class(TDADataTableRules, IDireccionesContacto)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -2483,7 +2505,7 @@ type
{ IClientesDescuentos }
IClientesDescuentos = interface(IDAStronglyTypedDataTable)
- ['{E18F5CD7-822B-48C7-9C22-A13591398D44}']
+ ['{36595819-5873-4417-861E-965E05572490}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -2521,7 +2543,7 @@ type
end;
{ TClientesDescuentosDataTableRules }
- TClientesDescuentosDataTableRules = class(TIntfObjectDADataTableRules, IClientesDescuentos)
+ TClientesDescuentosDataTableRules = class(TDADataTableRules, IClientesDescuentos)
private
protected
{ Property getters and setters }
@@ -2564,9 +2586,44 @@ type
end;
+ { IProcedenciasCliente }
+ IProcedenciasCliente = interface(IDAStronglyTypedDataTable)
+ ['{B40342B9-D515-44CE-B625-AB2A28D1A492}']
+ { Property getters and setters }
+ function GetDESCRIPCIONValue: String;
+ procedure SetDESCRIPCIONValue(const aValue: String);
+ function GetDESCRIPCIONIsNull: Boolean;
+ procedure SetDESCRIPCIONIsNull(const aValue: Boolean);
+
+
+ { Properties }
+ property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
+ property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
+ end;
+
+ { TProcedenciasClienteDataTableRules }
+ TProcedenciasClienteDataTableRules = class(TDADataTableRules, IProcedenciasCliente)
+ private
+ protected
+ { Property getters and setters }
+ function GetDESCRIPCIONValue: String; virtual;
+ procedure SetDESCRIPCIONValue(const aValue: String); virtual;
+ function GetDESCRIPCIONIsNull: Boolean; virtual;
+ procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual;
+
+ { Properties }
+ property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
+ property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
+
+ public
+ constructor Create(aDataTable: TDADataTable); override;
+ destructor Destroy; override;
+
+ end;
+
{ IGruposProveedor }
IGruposProveedor = interface(IDAStronglyTypedDataTable)
- ['{CA3DAC4A-3007-47A3-89C2-B8D256F3302E}']
+ ['{D71CE338-57E9-4A9F-9FDF-930F8A604CC2}']
{ Property getters and setters }
function GetDESCRIPCIONValue: String;
procedure SetDESCRIPCIONValue(const aValue: String);
@@ -2580,7 +2637,7 @@ type
end;
{ TGruposProveedorDataTableRules }
- TGruposProveedorDataTableRules = class(TIntfObjectDADataTableRules, IGruposProveedor)
+ TGruposProveedorDataTableRules = class(TDADataTableRules, IGruposProveedor)
private
protected
{ Property getters and setters }
@@ -2601,7 +2658,7 @@ type
{ IGruposEmpleado }
IGruposEmpleado = interface(IDAStronglyTypedDataTable)
- ['{69A5969A-4106-4587-BAED-06541567A599}']
+ ['{9D1C5665-2840-4EC1-B63D-341C8A2D30DC}']
{ Property getters and setters }
function GetDESCRIPCIONValue: String;
procedure SetDESCRIPCIONValue(const aValue: String);
@@ -2615,7 +2672,7 @@ type
end;
{ TGruposEmpleadoDataTableRules }
- TGruposEmpleadoDataTableRules = class(TIntfObjectDADataTableRules, IGruposEmpleado)
+ TGruposEmpleadoDataTableRules = class(TDADataTableRules, IGruposEmpleado)
private
protected
{ Property getters and setters }
@@ -2636,7 +2693,7 @@ type
{ IContactos_Refresh }
IContactos_Refresh = interface(IDAStronglyTypedDataTable)
- ['{862C6067-8EDC-4805-8BA3-3131D61764C6}']
+ ['{8411F090-017B-41A0-814D-1AB25F794BA4}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -2769,7 +2826,7 @@ type
end;
{ TContactos_RefreshDataTableRules }
- TContactos_RefreshDataTableRules = class(TIntfObjectDADataTableRules, IContactos_Refresh)
+ TContactos_RefreshDataTableRules = class(TDADataTableRules, IContactos_Refresh)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -4540,6 +4597,27 @@ begin
DataTable.Fields[idx_ClientesIGNORAR_CONTABILIDAD].AsVariant := Null;
end;
+function TClientesDataTableRules.GetPROCEDENCIA_CLIENTEValue: String;
+begin
+ result := DataTable.Fields[idx_ClientesPROCEDENCIA_CLIENTE].AsString;
+end;
+
+procedure TClientesDataTableRules.SetPROCEDENCIA_CLIENTEValue(const aValue: String);
+begin
+ DataTable.Fields[idx_ClientesPROCEDENCIA_CLIENTE].AsString := aValue;
+end;
+
+function TClientesDataTableRules.GetPROCEDENCIA_CLIENTEIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_ClientesPROCEDENCIA_CLIENTE].IsNull;
+end;
+
+procedure TClientesDataTableRules.SetPROCEDENCIA_CLIENTEIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_ClientesPROCEDENCIA_CLIENTE].AsVariant := Null;
+end;
+
{ TProveedoresDataTableRules }
constructor TProveedoresDataTableRules.Create(aDataTable: TDADataTable);
@@ -6415,6 +6493,39 @@ begin
end;
+{ TProcedenciasClienteDataTableRules }
+constructor TProcedenciasClienteDataTableRules.Create(aDataTable: TDADataTable);
+begin
+ inherited;
+end;
+
+destructor TProcedenciasClienteDataTableRules.Destroy;
+begin
+ inherited;
+end;
+
+function TProcedenciasClienteDataTableRules.GetDESCRIPCIONValue: String;
+begin
+ result := DataTable.Fields[idx_ProcedenciasClienteDESCRIPCION].AsString;
+end;
+
+procedure TProcedenciasClienteDataTableRules.SetDESCRIPCIONValue(const aValue: String);
+begin
+ DataTable.Fields[idx_ProcedenciasClienteDESCRIPCION].AsString := aValue;
+end;
+
+function TProcedenciasClienteDataTableRules.GetDESCRIPCIONIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_ProcedenciasClienteDESCRIPCION].IsNull;
+end;
+
+procedure TProcedenciasClienteDataTableRules.SetDESCRIPCIONIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_ProcedenciasClienteDESCRIPCION].AsVariant := Null;
+end;
+
+
{ TGruposProveedorDataTableRules }
constructor TGruposProveedorDataTableRules.Create(aDataTable: TDADataTable);
begin
@@ -6951,6 +7062,7 @@ initialization
RegisterDataTableRules(RID_Empleados, TEmpleadosDataTableRules);
RegisterDataTableRules(RID_DireccionesContacto, TDireccionesContactoDataTableRules);
RegisterDataTableRules(RID_ClientesDescuentos, TClientesDescuentosDataTableRules);
+ RegisterDataTableRules(RID_ProcedenciasCliente, TProcedenciasClienteDataTableRules);
RegisterDataTableRules(RID_GruposProveedor, TGruposProveedorDataTableRules);
RegisterDataTableRules(RID_GruposEmpleado, TGruposEmpleadoDataTableRules);
RegisterDataTableRules(RID_Contactos_Refresh, TContactos_RefreshDataTableRules);
diff --git a/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas b/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas
index 102305fc..26423f9c 100644
--- a/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas
+++ b/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas
@@ -9,23 +9,24 @@ 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_SubCuentasContactoDelta = '{C61B54E1-F314-4542-997D-397E249D61FA}';
- RID_ContactosDelta = '{D3E2A0CE-96A3-41A9-85B4-7BE8CFA3C79A}';
- RID_GruposClienteDelta = '{F5B47AD6-5B43-4FE1-9607-5CB39CB79A21}';
- RID_DatosBancariosDelta = '{C2A910E1-08F1-49F7-B0E9-85C448A3FA78}';
- RID_ClientesDelta = '{DB2F0740-6510-4933-8319-A6C42A41B1D3}';
- RID_ProveedoresDelta = '{4F4D8353-5DFD-493F-98A7-098340C343A0}';
- RID_EmpleadosDelta = '{D89254AA-A456-4113-9356-87878DD0342B}';
- RID_DireccionesContactoDelta = '{488B60E5-27F3-4A85-B8CF-A78A05CE3555}';
- RID_ClientesDescuentosDelta = '{0E2CBA43-B994-4B22-9560-96C73CE304F3}';
- RID_GruposProveedorDelta = '{EFF7AA25-B5B3-41EE-AB8F-2E889A72B8E6}';
- RID_GruposEmpleadoDelta = '{784E3585-2E4F-441F-9B7C-ACF190737701}';
- RID_Contactos_RefreshDelta = '{141705B2-3547-40A3-B6B9-4ABFDE30CD10}';
+ RID_SubCuentasContactoDelta = '{176D6032-77EB-42E3-B00D-A36F39E7FADA}';
+ RID_ContactosDelta = '{1750564A-A0EB-447F-85D4-974BE7F93A1B}';
+ RID_GruposClienteDelta = '{70646CE7-C62A-4D10-BCF5-245AAB51EE1B}';
+ RID_DatosBancariosDelta = '{85AE58EF-3FF7-4F77-A94B-55AD73296126}';
+ RID_ClientesDelta = '{7FB0E1AC-84E2-4C85-BDA4-EF7AEA8F3061}';
+ RID_ProveedoresDelta = '{B54B8DC8-4564-46C3-8400-19DDCF3B2BF0}';
+ RID_EmpleadosDelta = '{FE0C063A-18A0-4DBA-BC6A-2323006103FE}';
+ RID_DireccionesContactoDelta = '{150BDD77-02FA-4D7C-BD7A-601E2080A0D5}';
+ RID_ClientesDescuentosDelta = '{DB9B02CC-FD38-44BC-AEF1-D290B33ECDF3}';
+ RID_ProcedenciasClienteDelta = '{7250F4FB-83DB-46E7-9A36-A9428DDDB86C}';
+ RID_GruposProveedorDelta = '{80F30B7C-3451-4673-BF93-149065EC9D11}';
+ RID_GruposEmpleadoDelta = '{94F7258A-EF0A-4E0F-BD2B-EB41E541A86B}';
+ RID_Contactos_RefreshDelta = '{4C6D6C3E-4B74-4B9A-A59E-B640D3DB0415}';
type
{ ISubCuentasContactoDelta }
ISubCuentasContactoDelta = interface(ISubCuentasContacto)
- ['{C61B54E1-F314-4542-997D-397E249D61FA}']
+ ['{176D6032-77EB-42E3-B00D-A36F39E7FADA}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldREF_SUBCUENTAValue : String;
@@ -119,7 +120,7 @@ type
{ IContactosDelta }
IContactosDelta = interface(IContactos)
- ['{D3E2A0CE-96A3-41A9-85B4-7BE8CFA3C79A}']
+ ['{1750564A-A0EB-447F-85D4-974BE7F93A1B}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer;
@@ -418,7 +419,7 @@ type
{ IGruposClienteDelta }
IGruposClienteDelta = interface(IGruposCliente)
- ['{F5B47AD6-5B43-4FE1-9607-5CB39CB79A21}']
+ ['{70646CE7-C62A-4D10-BCF5-245AAB51EE1B}']
{ Property getters and setters }
function GetOldDESCRIPCIONValue : String;
@@ -452,7 +453,7 @@ type
{ IDatosBancariosDelta }
IDatosBancariosDelta = interface(IDatosBancarios)
- ['{C2A910E1-08F1-49F7-B0E9-85C448A3FA78}']
+ ['{85AE58EF-3FF7-4F77-A94B-55AD73296126}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CONTACTOValue : Integer;
@@ -582,7 +583,7 @@ type
{ IClientesDelta }
IClientesDelta = interface(IClientes)
- ['{DB2F0740-6510-4933-8319-A6C42A41B1D3}']
+ ['{7FB0E1AC-84E2-4C85-BDA4-EF7AEA8F3061}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer;
@@ -619,6 +620,7 @@ type
function GetOldTIENDA_WEBValue : SmallInt;
function GetOldCODIGO_ASIGNADOValue : String;
function GetOldIGNORAR_CONTABILIDADValue : Integer;
+ function GetOldPROCEDENCIA_CLIENTEValue : String;
{ Properties }
property OldID : Integer read GetOldIDValue;
@@ -656,6 +658,7 @@ type
property OldTIENDA_WEB : SmallInt read GetOldTIENDA_WEBValue;
property OldCODIGO_ASIGNADO : String read GetOldCODIGO_ASIGNADOValue;
property OldIGNORAR_CONTABILIDAD : Integer read GetOldIGNORAR_CONTABILIDADValue;
+ property OldPROCEDENCIA_CLIENTE : String read GetOldPROCEDENCIA_CLIENTEValue;
end;
{ TClientesBusinessProcessorRules }
@@ -874,6 +877,12 @@ type
function GetOldIGNORAR_CONTABILIDADIsNull: Boolean; virtual;
procedure SetIGNORAR_CONTABILIDADValue(const aValue: Integer); virtual;
procedure SetIGNORAR_CONTABILIDADIsNull(const aValue: Boolean); virtual;
+ function GetPROCEDENCIA_CLIENTEValue: String; virtual;
+ function GetPROCEDENCIA_CLIENTEIsNull: Boolean; virtual;
+ function GetOldPROCEDENCIA_CLIENTEValue: String; virtual;
+ function GetOldPROCEDENCIA_CLIENTEIsNull: Boolean; virtual;
+ procedure SetPROCEDENCIA_CLIENTEValue(const aValue: String); virtual;
+ procedure SetPROCEDENCIA_CLIENTEIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@@ -1016,6 +1025,10 @@ type
property IGNORAR_CONTABILIDADIsNull : Boolean read GetIGNORAR_CONTABILIDADIsNull write SetIGNORAR_CONTABILIDADIsNull;
property OldIGNORAR_CONTABILIDAD : Integer read GetOldIGNORAR_CONTABILIDADValue;
property OldIGNORAR_CONTABILIDADIsNull : Boolean read GetOldIGNORAR_CONTABILIDADIsNull;
+ property PROCEDENCIA_CLIENTE : String read GetPROCEDENCIA_CLIENTEValue write SetPROCEDENCIA_CLIENTEValue;
+ property PROCEDENCIA_CLIENTEIsNull : Boolean read GetPROCEDENCIA_CLIENTEIsNull write SetPROCEDENCIA_CLIENTEIsNull;
+ property OldPROCEDENCIA_CLIENTE : String read GetOldPROCEDENCIA_CLIENTEValue;
+ property OldPROCEDENCIA_CLIENTEIsNull : Boolean read GetOldPROCEDENCIA_CLIENTEIsNull;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@@ -1025,7 +1038,7 @@ type
{ IProveedoresDelta }
IProveedoresDelta = interface(IProveedores)
- ['{4F4D8353-5DFD-493F-98A7-098340C343A0}']
+ ['{B54B8DC8-4564-46C3-8400-19DDCF3B2BF0}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer;
@@ -1456,7 +1469,7 @@ type
{ IEmpleadosDelta }
IEmpleadosDelta = interface(IEmpleados)
- ['{D89254AA-A456-4113-9356-87878DD0342B}']
+ ['{FE0C063A-18A0-4DBA-BC6A-2323006103FE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CATEGORIAValue : Integer;
@@ -1843,7 +1856,7 @@ type
{ IDireccionesContactoDelta }
IDireccionesContactoDelta = interface(IDireccionesContacto)
- ['{488B60E5-27F3-4A85-B8CF-A78A05CE3555}']
+ ['{150BDD77-02FA-4D7C-BD7A-601E2080A0D5}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CONTACTOValue : Integer;
@@ -2058,7 +2071,7 @@ type
{ IClientesDescuentosDelta }
IClientesDescuentosDelta = interface(IClientesDescuentos)
- ['{0E2CBA43-B994-4B22-9560-96C73CE304F3}']
+ ['{DB9B02CC-FD38-44BC-AEF1-D290B33ECDF3}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CLIENTEValue : Integer;
@@ -2138,9 +2151,43 @@ type
end;
+ { IProcedenciasClienteDelta }
+ IProcedenciasClienteDelta = interface(IProcedenciasCliente)
+ ['{7250F4FB-83DB-46E7-9A36-A9428DDDB86C}']
+ { Property getters and setters }
+ function GetOldDESCRIPCIONValue : String;
+
+ { Properties }
+ property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
+ end;
+
+ { TProcedenciasClienteBusinessProcessorRules }
+ TProcedenciasClienteBusinessProcessorRules = class(TDABusinessProcessorRules, IProcedenciasCliente, IProcedenciasClienteDelta)
+ private
+ protected
+ { Property getters and setters }
+ function GetDESCRIPCIONValue: String; virtual;
+ function GetDESCRIPCIONIsNull: Boolean; virtual;
+ function GetOldDESCRIPCIONValue: String; virtual;
+ function GetOldDESCRIPCIONIsNull: Boolean; virtual;
+ procedure SetDESCRIPCIONValue(const aValue: String); virtual;
+ procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual;
+
+ { Properties }
+ property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
+ property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
+ property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
+ property OldDESCRIPCIONIsNull : Boolean read GetOldDESCRIPCIONIsNull;
+
+ public
+ constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
+ destructor Destroy; override;
+
+ end;
+
{ IGruposProveedorDelta }
IGruposProveedorDelta = interface(IGruposProveedor)
- ['{EFF7AA25-B5B3-41EE-AB8F-2E889A72B8E6}']
+ ['{80F30B7C-3451-4673-BF93-149065EC9D11}']
{ Property getters and setters }
function GetOldDESCRIPCIONValue : String;
@@ -2174,7 +2221,7 @@ type
{ IGruposEmpleadoDelta }
IGruposEmpleadoDelta = interface(IGruposEmpleado)
- ['{784E3585-2E4F-441F-9B7C-ACF190737701}']
+ ['{94F7258A-EF0A-4E0F-BD2B-EB41E541A86B}']
{ Property getters and setters }
function GetOldDESCRIPCIONValue : String;
@@ -2208,7 +2255,7 @@ type
{ IContactos_RefreshDelta }
IContactos_RefreshDelta = interface(IContactos_Refresh)
- ['{141705B2-3547-40A3-B6B9-4ABFDE30CD10}']
+ ['{4C6D6C3E-4B74-4B9A-A59E-B640D3DB0415}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldNIF_CIFValue : String;
@@ -4855,6 +4902,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesIGNORAR_CONTABILIDAD] := Null;
end;
+function TClientesBusinessProcessorRules.GetPROCEDENCIA_CLIENTEValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROCEDENCIA_CLIENTE];
+end;
+
+function TClientesBusinessProcessorRules.GetPROCEDENCIA_CLIENTEIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROCEDENCIA_CLIENTE]);
+end;
+
+function TClientesBusinessProcessorRules.GetOldPROCEDENCIA_CLIENTEValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPROCEDENCIA_CLIENTE];
+end;
+
+function TClientesBusinessProcessorRules.GetOldPROCEDENCIA_CLIENTEIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPROCEDENCIA_CLIENTE]);
+end;
+
+procedure TClientesBusinessProcessorRules.SetPROCEDENCIA_CLIENTEValue(const aValue: String);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROCEDENCIA_CLIENTE] := aValue;
+end;
+
+procedure TClientesBusinessProcessorRules.SetPROCEDENCIA_CLIENTEIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROCEDENCIA_CLIENTE] := Null;
+end;
+
{ TProveedoresBusinessProcessorRules }
constructor TProveedoresBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@@ -7587,6 +7665,49 @@ begin
end;
+{ TProcedenciasClienteBusinessProcessorRules }
+constructor TProcedenciasClienteBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
+begin
+ inherited;
+end;
+
+destructor TProcedenciasClienteBusinessProcessorRules.Destroy;
+begin
+ inherited;
+end;
+
+function TProcedenciasClienteBusinessProcessorRules.GetDESCRIPCIONValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProcedenciasClienteDESCRIPCION];
+end;
+
+function TProcedenciasClienteBusinessProcessorRules.GetDESCRIPCIONIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProcedenciasClienteDESCRIPCION]);
+end;
+
+function TProcedenciasClienteBusinessProcessorRules.GetOldDESCRIPCIONValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProcedenciasClienteDESCRIPCION];
+end;
+
+function TProcedenciasClienteBusinessProcessorRules.GetOldDESCRIPCIONIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProcedenciasClienteDESCRIPCION]);
+end;
+
+procedure TProcedenciasClienteBusinessProcessorRules.SetDESCRIPCIONValue(const aValue: String);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_ProcedenciasClienteDESCRIPCION] := aValue;
+end;
+
+procedure TProcedenciasClienteBusinessProcessorRules.SetDESCRIPCIONIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_ProcedenciasClienteDESCRIPCION] := Null;
+end;
+
+
{ TGruposProveedorBusinessProcessorRules }
constructor TGruposProveedorBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
begin
@@ -8354,6 +8475,7 @@ initialization
RegisterBusinessProcessorRules(RID_EmpleadosDelta, TEmpleadosBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_DireccionesContactoDelta, TDireccionesContactoBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_ClientesDescuentosDelta, TClientesDescuentosBusinessProcessorRules);
+ RegisterBusinessProcessorRules(RID_ProcedenciasClienteDelta, TProcedenciasClienteBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_GruposProveedorDelta, TGruposProveedorBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_GruposEmpleadoDelta, TGruposEmpleadoBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_Contactos_RefreshDelta, TContactos_RefreshBusinessProcessorRules);
diff --git a/Source/Modulos/Contactos/Model/uBizClientesServer.pas b/Source/Modulos/Contactos/Model/uBizClientesServer.pas
index 050bca0f..5918e60b 100644
--- a/Source/Modulos/Contactos/Model/uBizClientesServer.pas
+++ b/Source/Modulos/Contactos/Model/uBizClientesServer.pas
@@ -77,6 +77,7 @@ begin
ParamByName('TIENDA_WEB').Value := aChange.NewValueByName[fld_ClientesTIENDA_WEB];
ParamByName('CODIGO_ASIGNADO').Value := aChange.NewValueByName[fld_ClientesCODIGO_ASIGNADO];
ParamByName('IGNORAR_CONTABILIDAD').Value := aChange.NewValueByName[fld_ClientesIGNORAR_CONTABILIDAD];
+ ParamByName('PROCEDENCIA_CLIENTE').Value := aChange.NewValueByName[fld_ClientesPROCEDENCIA_CLIENTE];
Execute;
end;
finally
@@ -115,6 +116,7 @@ begin
ParamByName('TIENDA_WEB').Value := aChange.NewValueByName[fld_ClientesTIENDA_WEB];
ParamByName('CODIGO_ASIGNADO').Value := aChange.NewValueByName[fld_ClientesCODIGO_ASIGNADO];
ParamByName('IGNORAR_CONTABILIDAD').Value := aChange.NewValueByName[fld_ClientesIGNORAR_CONTABILIDAD];
+ ParamByName('PROCEDENCIA_CLIENTE').Value := aChange.NewValueByName[fld_ClientesPROCEDENCIA_CLIENTE];
Execute;
end;
finally
diff --git a/Source/Modulos/Contactos/Model/uBizContactos.pas b/Source/Modulos/Contactos/Model/uBizContactos.pas
index 8d883f1d..bd4e7e2d 100644
--- a/Source/Modulos/Contactos/Model/uBizContactos.pas
+++ b/Source/Modulos/Contactos/Model/uBizContactos.pas
@@ -47,6 +47,9 @@ type
function GetGRUPO_CLIENTEValue: String;
procedure SetGRUPO_CLIENTEValue(const aValue: String);
+ function GetPROCEDENCIA_CLIENTEValue: String;
+ procedure SetPROCEDENCIA_CLIENTEValue(const aValue: String);
+
function GetNOMBRE_COMERCIALValue: String;
procedure SetNOMBRE_COMERCIALValue(const aValue: String);
@@ -58,7 +61,7 @@ type
function GetMOTIVO_BLOQUEOValue: String;
procedure SetMOTIVO_BLOQUEOValue(const aValue: String);
-
+
function GetRECARGO_EQUIVALENCIAValue: Integer;
procedure SetRECARGO_EQUIVALENCIAValue(const aValue: Integer);
@@ -79,7 +82,7 @@ type
property Descuentos: IBizClienteDescuentos read GetDescuentos write SetDescuentos;
property GRUPO_CLIENTE: String read GetGRUPO_CLIENTEValue write SetGRUPO_CLIENTEValue;
-
+ property PROCEDENCIA_CLIENTE: String read GetPROCEDENCIA_CLIENTEValue write SetPROCEDENCIA_CLIENTEValue;
property NOMBRE_COMERCIAL: String read GetNOMBRE_COMERCIALValue write SetNOMBRE_COMERCIALValue;
property VENCIMIENTO_FACTURAS: Integer read GetVENCIMIENTO_FACTURASValue write SetVENCIMIENTO_FACTURASValue;
property BLOQUEADO: Integer read GetBLOQUEADOValue write SetBLOQUEADOValue;
@@ -231,6 +234,9 @@ type
function GetGRUPO_CLIENTEValue: String;
procedure SetGRUPO_CLIENTEValue(const aValue: String);
+ function GetPROCEDENCIA_CLIENTEValue: String;
+ procedure SetPROCEDENCIA_CLIENTEValue(const aValue: String);
+
function GetNOMBRE_COMERCIALValue: String;
procedure SetNOMBRE_COMERCIALValue(const aValue: String);
@@ -273,6 +279,7 @@ type
destructor Destroy; override;
property Descuentos: IBizClienteDescuentos read GetDescuentos write SetDescuentos;
property GRUPO_CLIENTE: String read GetGRUPO_CLIENTEValue write SetGRUPO_CLIENTEValue;
+ property PROCEDENCIA_CLIENTE: String read GetPROCEDENCIA_CLIENTEValue write SetPROCEDENCIA_CLIENTEValue;
property NOMBRE_COMERCIAL: String read GetNOMBRE_COMERCIALValue write SetNOMBRE_COMERCIALValue;
property VENCIMIENTO_FACTURAS: Integer read GetVENCIMIENTO_FACTURASValue write SetVENCIMIENTO_FACTURASValue;
property BLOQUEADO: Integer read GetBLOQUEADOValue write SetBLOQUEADOValue;
@@ -527,6 +534,11 @@ begin
result := DataTable.Fields[idx_ClientesNOMBRE_COMERCIAL].AsString;
end;
+function TBizCliente.GetPROCEDENCIA_CLIENTEValue: String;
+begin
+ result := DataTable.Fields[idx_ClientesPROCEDENCIA_CLIENTE].AsString;
+end;
+
procedure TBizCliente.SetBLOQUEADOValue(const aValue: Integer);
begin
DataTable.Fields[idx_ClientesBLOQUEADO].AsInteger := aValue;
@@ -568,6 +580,11 @@ begin
DataTable.Fields[idx_ClientesNOMBRE_COMERCIAL].AsString := aValue;
end;
+procedure TBizCliente.SetPROCEDENCIA_CLIENTEValue(const aValue: String);
+begin
+ DataTable.Fields[idx_ClientesPROCEDENCIA_CLIENTE].AsString := aValue;
+end;
+
function TBizCliente.GetRECARGO_EQUIVALENCIAValue: Integer;
begin
Result := DataTable.Fields[idx_ClientesRECARGO_EQUIVALENCIA].AsInteger;
diff --git a/Source/Modulos/Contactos/Model/uBizProcedenciasCliente.pas b/Source/Modulos/Contactos/Model/uBizProcedenciasCliente.pas
new file mode 100644
index 00000000..54ad7f35
--- /dev/null
+++ b/Source/Modulos/Contactos/Model/uBizProcedenciasCliente.pas
@@ -0,0 +1,27 @@
+unit uBizProcedenciasCliente;
+
+interface
+
+uses
+ uDAInterfaces, uDADataTable, schContactosClient_Intf;
+
+const
+ BIZ_CLIENT_PROCEDENCIASCLIENTE = 'Client.ProcedenciaCliente';
+
+type
+ IBizProcedenciaCliente = interface(IProcedenciasCliente)
+ ['{305E0EFE-D650-447A-BF9A-8B5A89AED057}']
+ end;
+
+ TBizProcedenciaCliente = class(TProcedenciasClienteDataTableRules, IBizProcedenciaCliente)
+ end;
+
+implementation
+
+initialization
+ RegisterDataTableRules(BIZ_CLIENT_PROCEDENCIASCLIENTE, TBizProcedenciaCliente);
+
+finalization
+
+end.
+
diff --git a/Source/Modulos/Contactos/Plugin/uPluginContactos.dfm b/Source/Modulos/Contactos/Plugin/uPluginContactos.dfm
index 9568f911..2a0982f0 100644
--- a/Source/Modulos/Contactos/Plugin/uPluginContactos.dfm
+++ b/Source/Modulos/Contactos/Plugin/uPluginContactos.dfm
@@ -249,6 +249,10 @@ object PluginContactos: TPluginContactos
ImageIndex = 4
OnExecute = actGruposEmpleadoExecute
end
+ object actProcedenciasCliente: TAction
+ Caption = 'Procedencias de cliente'
+ OnExecute = actProcedenciasClienteExecute
+ end
end
object MainMenu: TMainMenu
Images = SmallImages
@@ -269,6 +273,10 @@ object PluginContactos: TPluginContactos
Tag = 103
Action = actGruposEmpleado
end
+ object Procedenciasdecliente1: TMenuItem
+ Tag = 104
+ Action = actProcedenciasCliente
+ end
end
object Compras1: TMenuItem
Caption = '&Compras'
diff --git a/Source/Modulos/Contactos/Plugin/uPluginContactos.pas b/Source/Modulos/Contactos/Plugin/uPluginContactos.pas
index 00ef3898..2205e2a2 100644
--- a/Source/Modulos/Contactos/Plugin/uPluginContactos.pas
+++ b/Source/Modulos/Contactos/Plugin/uPluginContactos.pas
@@ -32,17 +32,20 @@ type
Categoriasdeempleado1: TMenuItem;
Gruposdeproveedor1: TMenuItem;
Da1: TMenuItem;
+ actProcedenciasCliente: TAction;
+ Procedenciasdecliente1: TMenuItem;
procedure actClientesExecute(Sender: TObject);
procedure actProveedoresExecute(Sender: TObject);
procedure actEmpleadosExecute(Sender: TObject);
procedure actGruposClienteExecute(Sender: TObject);
procedure actGruposProveedorExecute(Sender: TObject);
procedure actGruposEmpleadoExecute(Sender: TObject);
+ procedure actProcedenciasClienteExecute(Sender: TObject);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
-
+
implementation
{$R *.dfm}
@@ -50,9 +53,9 @@ implementation
uses
Forms, Dialogs, uGUIBase, uCustomEditor, SysUtils, uContactosController,
uClientesController, uProveedoresController, uEmpleadosController,
- uGruposClienteController, uBizGruposCliente, uGruposProveedorController,
- uBizGruposProveedor, uGruposEmpleadoController, uBizGruposEmpleado,
- uContactosViewRegister, uBizContactos;
+ uGruposClienteController, uProcedenciasClienteController, uBizGruposCliente,
+ uGruposProveedorController, uBizGruposProveedor, uBizProcedenciasCliente,
+ uGruposEmpleadoController, uBizGruposEmpleado, uContactosViewRegister, uBizContactos;
function GetModule : TModuleController;
begin
@@ -110,6 +113,16 @@ begin
AGruposProveedorController.VerTodos(AGruposProveedor);
end;
+procedure TPluginContactos.actProcedenciasClienteExecute(Sender: TObject);
+var
+ AProcedenciasClienteController : IProcedenciasClienteController;
+ AProcedenciasCliente : IBizProcedenciaCliente;
+begin
+ AProcedenciasClienteController := TProcedenciasClienteController.Create;
+ AProcedenciasCliente := (AProcedenciasClienteController.BuscarTodos as IBizProcedenciaCliente);
+ AProcedenciasClienteController.VerTodos(AProcedenciasCliente);
+end;
+
procedure TPluginContactos.actProveedoresExecute(Sender: TObject);
var
AProveedoresController : IProveedoresController;
diff --git a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm
index 26f91996..aae34aeb 100644
--- a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm
+++ b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm
@@ -594,6 +594,10 @@ object srvContactos: TsrvContactos
item
DatasetField = 'IGNORAR_CONTABILIDAD'
TableField = 'IGNORAR_CONTABILIDAD'
+ end
+ item
+ DatasetField = 'PROCEDENCIA_CLIENTE'
+ TableField = 'PROCEDENCIA_CLIENTE'
end>
end>
Name = 'Clientes'
@@ -799,6 +803,12 @@ object srvContactos: TsrvContactos
Name = 'IGNORAR_CONTABILIDAD'
DataType = datInteger
DictionaryEntry = 'Clientes_IGNORAR_CONTABILIDAD'
+ end
+ item
+ Name = 'PROCEDENCIA_CLIENTE'
+ DataType = datString
+ Size = 255
+ DictionaryEntry = 'Clientes_PROCEDENCIA_CLIENTE'
end>
end
item
@@ -1105,6 +1115,7 @@ object srvContactos: TsrvContactos
item
Name = 'GRUPO_PROVEEDOR'
DataType = datString
+ Size = 255
DictionaryEntry = 'Proveedores_GRUPO_PROVEEDOR'
end
item
@@ -1620,6 +1631,7 @@ object srvContactos: TsrvContactos
Statements = <
item
Connection = 'IBX'
+ TargetTable = 'CLIENTES_DTOS_PROVEEDORES'
SQL =
'SELECT '#10' CLIENTES_DTOS_PROVEEDORES.ID,'#10' CLIENTES_DTOS_PROV' +
'EEDORES.ID_CLIENTE,'#10' CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR,'#10 +
@@ -1683,6 +1695,30 @@ object srvContactos: TsrvContactos
DictionaryEntry = 'ClientesDescuentos_DESCUENTO'
end>
end
+ item
+ Params = <>
+ Statements = <
+ item
+ Connection = 'IBX'
+ ConnectionType = 'Interbase'
+ Default = True
+ TargetTable = 'CLIENTES_PROCEDENCIAS'
+ Name = 'IBX'
+ StatementType = stAutoSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end>
+ end>
+ Name = 'ProcedenciasCliente'
+ Fields = <
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 255
+ end>
+ end
item
Params = <>
Statements = <
@@ -2642,6 +2678,10 @@ object srvContactos: TsrvContactos
item
Name = 'IGNORAR_CONTABILIDAD'
Value = ''
+ end
+ item
+ Name = 'PROCEDENCIA_CLIENTE'
+ Value = ''
end>
Statements = <
item
@@ -2651,11 +2691,12 @@ object srvContactos: TsrvContactos
'INSERT'#10' INTO CLIENTES_DATOS'#10' (ID_CLIENTE, GRUPO_CLIENTE, REC' +
'ARGO_EQUIVALENCIA,'#10' NOMBRE_COMERCIAL, VENCIMIENTO_FACTURAS, ' +
'BLOQUEADO, MOTIVO_BLOQUEO,'#10' REGIMEN_IVA, ID_TIPO_IVA, ID_FOR' +
- 'MA_PAGO, TIENDA_WEB, CODIGO_ASIGNADO, IGNORAR_CONTABILIDAD)'#10' VA' +
- 'LUES'#10' (:ID_CLIENTE, :GRUPO_CLIENTE, :RECARGO_EQUIVALENCIA,'#10' ' +
- ' :NOMBRE_COMERCIAL, :VENCIMIENTO_FACTURAS,'#10' :BLOQUEADO, :M' +
- 'OTIVO_BLOQUEO, :REGIMEN_IVA,'#10' :ID_TIPO_IVA, :ID_FORMA_PAGO, ' +
- ':TIENDA_WEB, :CODIGO_ASIGNADO, :IGNORAR_CONTABILIDAD)'#10
+ 'MA_PAGO, TIENDA_WEB, CODIGO_ASIGNADO, IGNORAR_CONTABILIDAD,'#10' ' +
+ ' PROCEDENCIA_CLIENTE)'#10' VALUES'#10' (:ID_CLIENTE, :GRUPO_CLIENTE,' +
+ ' :RECARGO_EQUIVALENCIA,'#10' :NOMBRE_COMERCIAL, :VENCIMIENTO_FAC' +
+ 'TURAS,'#10' :BLOQUEADO, :MOTIVO_BLOQUEO, :REGIMEN_IVA,'#10' :ID_' +
+ 'TIPO_IVA, :ID_FORMA_PAGO, :TIENDA_WEB, :CODIGO_ASIGNADO, :IGNORA' +
+ 'R_CONTABILIDAD,'#10' :PROCEDENCIA_CLIENTE)'#10
StatementType = stSQL
ColumnMappings = <>
end>
@@ -2735,6 +2776,10 @@ object srvContactos: TsrvContactos
Name = 'IGNORAR_CONTABILIDAD'
Value = ''
end
+ item
+ Name = 'PROCEDENCIA_CLIENTE'
+ Value = ''
+ end
item
Name = 'OLD_ID_CLIENTE'
Value = ''
@@ -2752,7 +2797,8 @@ object srvContactos: TsrvContactos
'= :REGIMEN_IVA,'#10' ID_TIPO_IVA = :ID_TIPO_IVA,'#10' ID_FORMA_PAG' +
'O = :ID_FORMA_PAGO,'#10' TIENDA_WEB = :TIENDA_WEB,'#10' CODIGO_ASI' +
'GNADO = :CODIGO_ASIGNADO,'#10' IGNORAR_CONTABILIDAD = :IGNORAR_CO' +
- 'NTABILIDAD'#10' WHERE'#10' (ID_CLIENTE = :OLD_ID_CLIENTE)'#10
+ 'NTABILIDAD,'#10' PROCEDENCIA_CLIENTE = :PROCEDENCIA_CLIENTE'#10' WHE' +
+ 'RE'#10' (ID_CLIENTE = :OLD_ID_CLIENTE)'#10
StatementType = stSQL
ColumnMappings = <>
end>
@@ -4202,6 +4248,7 @@ object srvContactos: TsrvContactos
item
Name = 'Proveedores_GRUPO_PROVEEDOR'
DataType = datString
+ Size = 255
DisplayLabel = 'Grupo proveedor'
end
item
@@ -4333,6 +4380,11 @@ object srvContactos: TsrvContactos
item
Name = 'Clientes_IGNORAR_CONTABILIDAD'
DataType = datInteger
+ end
+ item
+ Name = 'Clientes_PROCEDENCIA_CLIENTE'
+ DataType = datString
+ Size = 255
end>
Left = 126
Top = 14
diff --git a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas
index 389e68e2..38159047 100644
--- a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas
+++ b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas
@@ -67,6 +67,7 @@ procedure TsrvContactos.DARemoteServiceBeforeGetDatasetData(
begin
if (DataSet.Name <> nme_DatosBancarios) and
(DataSet.Name <> nme_DireccionesContacto) and
+ (DataSet.Name <> nme_ProcedenciasCliente) and
(DataSet.Name <> nme_GruposCliente) and
(DataSet.Name <> nme_GruposProveedor) and
(DataSet.Name <> nme_GruposEmpleado) and
diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dpk b/Source/Modulos/Contactos/Views/Contactos_view.dpk
index 0437c6a0..7e6e2bfc 100644
Binary files a/Source/Modulos/Contactos/Views/Contactos_view.dpk and b/Source/Modulos/Contactos/Views/Contactos_view.dpk differ
diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dproj b/Source/Modulos/Contactos/Views/Contactos_view.dproj
index 487fa7d0..ba669ffd 100644
--- a/Source/Modulos/Contactos/Views/Contactos_view.dproj
+++ b/Source/Modulos/Contactos/Views/Contactos_view.dproj
@@ -49,18 +49,26 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -121,6 +129,10 @@
TCustomEditor
+
+
+ TCustomEditor
+
TCustomEditor
@@ -193,6 +205,11 @@
TCustomView
+
+
+
+
+