diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql index 5883cc8b..f9559311 100644 --- a/Database/scripts/factuges.sql +++ b/Database/scripts/factuges.sql @@ -566,7 +566,9 @@ CREATE TABLE EMPLEADOS_DATOS ( FORMACION_RECIBIDA TIPO_NOTAS, EXPERIENCIA TIPO_NOTAS, CONTRATO VARCHAR(255), - DURACION VARCHAR(255) + DURACION VARCHAR(255), + FECHA_BAJA DATE, + CAUSA_BAJA VARCHAR(255) ); @@ -1798,7 +1800,9 @@ CREATE VIEW V_EMPLEADOS( FORMACION_RECIBIDA, EXPERIENCIA, CONTRATO, - DURACION) + DURACION, + FECHA_BAJA, + CAUSA_BAJA) AS SELECT V_CONTACTOS.ID, V_CONTACTOS.ID_CATEGORIA, @@ -1832,7 +1836,9 @@ SELECT V_CONTACTOS.ID, EMPLEADOS_DATOS.FORMACION_RECIBIDA, EMPLEADOS_DATOS.EXPERIENCIA, EMPLEADOS_DATOS.CONTRATO, - EMPLEADOS_DATOS.DURACION + EMPLEADOS_DATOS.DURACION, + EMPLEADOS_DATOS.FECHA_BAJA, + EMPLEADOS_DATOS.CAUSA_BAJA FROM V_CONTACTOS INNER JOIN EMPLEADOS_DATOS ON (EMPLEADOS_DATOS.ID_EMPLEADO = V_CONTACTOS.ID) diff --git a/Source/Informes/InfFacturaCliente.fr3 b/Source/Informes/InfFacturaCliente.fr3 index 890cdab5..37d2d193 100644 --- a/Source/Informes/InfFacturaCliente.fr3 +++ b/Source/Informes/InfFacturaCliente.fr3 @@ -1,5 +1,5 @@ - + @@ -32,7 +32,7 @@ - + @@ -48,6 +48,7 @@ + @@ -56,7 +57,7 @@ - + diff --git a/Source/Modulos/Contactos/Contactos_Group.groupproj b/Source/Modulos/Contactos/Contactos_Group.groupproj index acab6020..ed6f9d2d 100644 --- a/Source/Modulos/Contactos/Contactos_Group.groupproj +++ b/Source/Modulos/Contactos/Contactos_Group.groupproj @@ -9,6 +9,7 @@ + @@ -111,14 +112,23 @@ + + + + + + + + + - + - + - + \ No newline at end of file diff --git a/Source/Modulos/Contactos/Controller/uEmpleadosController.pas b/Source/Modulos/Contactos/Controller/uEmpleadosController.pas index c2c83486..6e941bca 100644 --- a/Source/Modulos/Contactos/Controller/uEmpleadosController.pas +++ b/Source/Modulos/Contactos/Controller/uEmpleadosController.pas @@ -19,6 +19,9 @@ type end; TEmpleadosController = class(TContactosController, IEmpleadosController) + protected + function ValidarContacto(AContacto : IBizContacto): Boolean; override; + public constructor Create; override; @@ -250,6 +253,21 @@ begin end; end; +function TEmpleadosController.ValidarContacto(AContacto: IBizContacto): Boolean; +begin + Result := inherited ValidarContacto(AContacto); + + if Result then + begin + if not (AContacto as IBizEmpleado).FECHA_BAJAIsNull + and (Length((AContacto as IBizEmpleado).CAUSA_BAJA) = 0) then + begin + Result := False; + raise Exception.Create('Debe indicar la causa de la baja del empleado.'); + end; + end; +end; + procedure TEmpleadosController.Ver(AContacto: IBizContacto); var AEditor : IEditorEmpleado; diff --git a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm index d5dd959e..9e07e390 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm @@ -262,6 +262,7 @@ inherited DataModuleEmpleados: TDataModuleEmpleados Name = 'MOVIL_2' DataType = datString Size = 25 + DisplayLabel = 'M'#243'vil 2' DictionaryEntry = 'Contactos_MOVIL_2' end item @@ -385,6 +386,15 @@ inherited DataModuleEmpleados: TDataModuleEmpleados Name = 'DURACION' DataType = datString Size = 255 + end + item + Name = 'FECHA_BAJA' + DataType = datDateTime + end + item + Name = 'CAUSA_BAJA' + DataType = datString + Size = 255 end> Params = <> StreamingOptions = [soDisableEventsWhileStreaming] diff --git a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas index 977e6adf..0a33f18d 100644 --- a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas +++ b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas @@ -9,20 +9,20 @@ 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_Contactos = '{93EE37EB-EC83-4592-8FE0-7213976D576D}'; - RID_GruposCliente = '{405EBA8C-423C-4F5C-A73D-C2ED7FADCF50}'; - RID_DatosBancarios = '{553F9CFD-FE58-4438-A870-320A6710FCBB}'; - RID_Clientes = '{E6D1F0FB-258F-418D-A500-D78BFF26BDD9}'; - RID_Proveedores = '{4A0F6766-6036-4C05-8C74-5353D2DA1E2B}'; - RID_Empleados = '{5D29F2D4-A1FA-491F-A55F-E0FD6580AF8D}'; - RID_DireccionesContacto = '{FBCF230B-6E4D-41E0-A1AA-32B8974AFA2D}'; - RID_ClientesDescuentos = '{492B1649-7148-4F9C-AAAD-779E432AAA55}'; - RID_GruposProveedor = '{F1D82002-96A0-4752-BC1B-094DE5333C26}'; - RID_GruposEmpleado = '{99BFA415-6A6F-4FAD-9BA4-1CA0C43C8703}'; - RID_Contactos_Refresh = '{2E88E5F4-9D4C-41EB-8124-B7E11F35EC30}'; - RID_ContratosEmpleados = '{EAC10CE6-2393-438D-B2EC-6B42270C7A54}'; - RID_DescripcionesProveedores = '{B54CE8F6-BE2F-4585-8FD2-74C9F174B767}'; - RID_PersonalContacto = '{E684C573-A7E7-48C0-BA69-47291498ED5B}'; + RID_Contactos = '{BA38FE66-615B-443E-AC3B-35C54BDAFC7A}'; + RID_GruposCliente = '{ECDB7613-9634-41F2-A3E9-ACFC9A17B4F5}'; + RID_DatosBancarios = '{77786226-ACA0-48D9-AA44-100AA432FDEF}'; + RID_Clientes = '{6F4ADF37-1957-4D1E-B7E0-659C9DC9B27D}'; + RID_Proveedores = '{58992D88-A743-479E-BE3F-183331F83BEA}'; + RID_Empleados = '{D2941064-ABFB-4CE5-8832-8683F90888A8}'; + RID_DireccionesContacto = '{2FE736C9-BBC8-43AB-88FC-A6675E0644B2}'; + RID_ClientesDescuentos = '{F0E0984F-17C9-4C7D-8D57-18ED1698C080}'; + RID_GruposProveedor = '{FFA4AEFF-DC59-4422-9CFA-28857080FC60}'; + RID_GruposEmpleado = '{43140B72-AFD6-404D-A094-8612B4E8934D}'; + RID_Contactos_Refresh = '{301DA664-5CB6-4311-91C7-A12C42F115B1}'; + RID_ContratosEmpleados = '{49DF13A6-2C5B-4F25-A3CE-7326FAB32B84}'; + RID_DescripcionesProveedores = '{83FBF40E-6287-46F5-BFAF-C6D92FE7AF4F}'; + RID_PersonalContacto = '{0BF3EDA4-836A-4340-9F68-0C3312527D0B}'; { Data table names } nme_Contactos = 'Contactos'; @@ -299,6 +299,8 @@ const fld_EmpleadosEXPERIENCIA = 'EXPERIENCIA'; fld_EmpleadosCONTRATO = 'CONTRATO'; fld_EmpleadosDURACION = 'DURACION'; + fld_EmpleadosFECHA_BAJA = 'FECHA_BAJA'; + fld_EmpleadosCAUSA_BAJA = 'CAUSA_BAJA'; { Empleados field indexes } idx_EmpleadosID = 0; @@ -333,6 +335,8 @@ const idx_EmpleadosEXPERIENCIA = 29; idx_EmpleadosCONTRATO = 30; idx_EmpleadosDURACION = 31; + idx_EmpleadosFECHA_BAJA = 32; + idx_EmpleadosCAUSA_BAJA = 33; { DireccionesContacto fields } fld_DireccionesContactoID = 'ID'; @@ -485,7 +489,7 @@ const type { IContactos } IContactos = interface(IDAStronglyTypedDataTable) - ['{E59305EA-4E84-419D-BD85-09D7CCE228B0}'] + ['{411FE58B-C504-42A1-881E-C645A05E3996}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -784,7 +788,7 @@ type { IGruposCliente } IGruposCliente = interface(IDAStronglyTypedDataTable) - ['{A5E9E3A7-70E6-497D-A259-BA3D053DFC4E}'] + ['{7C7B3A92-D0E8-4041-91B0-BFBED35FAAF1}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -831,7 +835,7 @@ type { IDatosBancarios } IDatosBancarios = interface(IDAStronglyTypedDataTable) - ['{8099114C-D422-4D38-922C-E8A3D6AC04DD}'] + ['{0262BC83-1F74-45D2-A847-0E0348C36252}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -962,7 +966,7 @@ type { IClientes } IClientes = interface(IDAStronglyTypedDataTable) - ['{F0AA957B-22FD-410C-8BDD-7E51344DDA81}'] + ['{9799E066-6E73-47CC-A9A4-9E816290C1D6}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -1405,7 +1409,7 @@ type { IProveedores } IProveedores = interface(IDAStronglyTypedDataTable) - ['{B87D9D38-E5EF-48AE-8462-2651C12521D7}'] + ['{7EBD5AEC-9F83-44E3-A329-B74A389C9814}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -1836,7 +1840,7 @@ type { IEmpleados } IEmpleados = interface(IDAStronglyTypedDataTable) - ['{F05CFAAA-AFD5-4EEA-9153-CCAC4226505B}'] + ['{7FADA31E-8655-459C-83CF-22C5B4E04828}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -1961,6 +1965,14 @@ type procedure SetDURACIONValue(const aValue: String); function GetDURACIONIsNull: Boolean; procedure SetDURACIONIsNull(const aValue: Boolean); + function GetFECHA_BAJAValue: DateTime; + procedure SetFECHA_BAJAValue(const aValue: DateTime); + function GetFECHA_BAJAIsNull: Boolean; + procedure SetFECHA_BAJAIsNull(const aValue: Boolean); + function GetCAUSA_BAJAValue: String; + procedure SetCAUSA_BAJAValue(const aValue: String); + function GetCAUSA_BAJAIsNull: Boolean; + procedure SetCAUSA_BAJAIsNull(const aValue: Boolean); { Properties } @@ -2028,6 +2040,10 @@ type property CONTRATOIsNull: Boolean read GetCONTRATOIsNull write SetCONTRATOIsNull; property DURACION: String read GetDURACIONValue write SetDURACIONValue; property DURACIONIsNull: Boolean read GetDURACIONIsNull write SetDURACIONIsNull; + property FECHA_BAJA: DateTime read GetFECHA_BAJAValue write SetFECHA_BAJAValue; + property FECHA_BAJAIsNull: Boolean read GetFECHA_BAJAIsNull write SetFECHA_BAJAIsNull; + property CAUSA_BAJA: String read GetCAUSA_BAJAValue write SetCAUSA_BAJAValue; + property CAUSA_BAJAIsNull: Boolean read GetCAUSA_BAJAIsNull write SetCAUSA_BAJAIsNull; end; { TEmpleadosDataTableRules } @@ -2168,6 +2184,14 @@ type procedure SetDURACIONValue(const aValue: String); virtual; function GetDURACIONIsNull: Boolean; virtual; procedure SetDURACIONIsNull(const aValue: Boolean); virtual; + function GetFECHA_BAJAValue: DateTime; virtual; + procedure SetFECHA_BAJAValue(const aValue: DateTime); virtual; + function GetFECHA_BAJAIsNull: Boolean; virtual; + procedure SetFECHA_BAJAIsNull(const aValue: Boolean); virtual; + function GetCAUSA_BAJAValue: String; virtual; + procedure SetCAUSA_BAJAValue(const aValue: String); virtual; + function GetCAUSA_BAJAIsNull: Boolean; virtual; + procedure SetCAUSA_BAJAIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; @@ -2234,6 +2258,10 @@ type property CONTRATOIsNull: Boolean read GetCONTRATOIsNull write SetCONTRATOIsNull; property DURACION: String read GetDURACIONValue write SetDURACIONValue; property DURACIONIsNull: Boolean read GetDURACIONIsNull write SetDURACIONIsNull; + property FECHA_BAJA: DateTime read GetFECHA_BAJAValue write SetFECHA_BAJAValue; + property FECHA_BAJAIsNull: Boolean read GetFECHA_BAJAIsNull write SetFECHA_BAJAIsNull; + property CAUSA_BAJA: String read GetCAUSA_BAJAValue write SetCAUSA_BAJAValue; + property CAUSA_BAJAIsNull: Boolean read GetCAUSA_BAJAIsNull write SetCAUSA_BAJAIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -2243,7 +2271,7 @@ type { IDireccionesContacto } IDireccionesContacto = interface(IDAStronglyTypedDataTable) - ['{18FB7335-FF1C-4630-8854-17884DC46240}'] + ['{5B3F654F-2625-40E8-A6F7-F83DE29B3AF2}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -2458,7 +2486,7 @@ type { IClientesDescuentos } IClientesDescuentos = interface(IDAStronglyTypedDataTable) - ['{E5432957-80FF-4189-BB6C-FC5AFF168B06}'] + ['{5DA8AAC1-7E71-496C-83E2-CB4A5DEA2D89}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -2541,7 +2569,7 @@ type { IGruposProveedor } IGruposProveedor = interface(IDAStronglyTypedDataTable) - ['{4E1C83AD-248C-4770-8423-06D6781FAD25}'] + ['{AF7D8134-2E25-47ED-B907-F122AAECFDC4}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -2588,7 +2616,7 @@ type { IGruposEmpleado } IGruposEmpleado = interface(IDAStronglyTypedDataTable) - ['{9A44FB5F-D13D-4E10-8C49-288C227EAD86}'] + ['{6D69900D-66A4-45F4-B39D-F553E5040214}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -2635,7 +2663,7 @@ type { IContactos_Refresh } IContactos_Refresh = interface(IDAStronglyTypedDataTable) - ['{4A0B8556-7E34-434D-9A0E-B0C9D491CE4D}'] + ['{E71CEE7C-252B-4AD6-952F-1D4A6DCCB33C}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -2910,7 +2938,7 @@ type { IContratosEmpleados } IContratosEmpleados = interface(IDAStronglyTypedDataTable) - ['{87553D29-875F-488F-861C-29563ABC962F}'] + ['{31774D76-B4F1-4DC8-9A99-040A137AC446}'] { Property getters and setters } function GetCONTRATOValue: String; procedure SetCONTRATOValue(const aValue: String); @@ -2945,7 +2973,7 @@ type { IDescripcionesProveedores } IDescripcionesProveedores = interface(IDAStronglyTypedDataTable) - ['{7F14E7C1-A3ED-4F13-9C58-2375D3663AFC}'] + ['{EAFB7FCC-50C5-49F7-9A09-F407F1BCEEAC}'] { Property getters and setters } function GetDESCRIPCION_PROVEEDORValue: String; procedure SetDESCRIPCION_PROVEEDORValue(const aValue: String); @@ -2980,7 +3008,7 @@ type { IPersonalContacto } IPersonalContacto = interface(IDAStronglyTypedDataTable) - ['{B0636C03-3DAC-4019-974C-EE81DAB0BA70}'] + ['{A05D0D86-2240-4E70-95EC-C4C0252EDB5F}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -6079,6 +6107,48 @@ begin DataTable.Fields[idx_EmpleadosDURACION].AsVariant := Null; end; +function TEmpleadosDataTableRules.GetFECHA_BAJAValue: DateTime; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_BAJA].AsDateTime; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_BAJAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_EmpleadosFECHA_BAJA].AsDateTime := aValue; +end; + +function TEmpleadosDataTableRules.GetFECHA_BAJAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_BAJA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_BAJAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFECHA_BAJA].AsVariant := Null; +end; + +function TEmpleadosDataTableRules.GetCAUSA_BAJAValue: String; +begin + result := DataTable.Fields[idx_EmpleadosCAUSA_BAJA].AsString; +end; + +procedure TEmpleadosDataTableRules.SetCAUSA_BAJAValue(const aValue: String); +begin + DataTable.Fields[idx_EmpleadosCAUSA_BAJA].AsString := aValue; +end; + +function TEmpleadosDataTableRules.GetCAUSA_BAJAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosCAUSA_BAJA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetCAUSA_BAJAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosCAUSA_BAJA].AsVariant := Null; +end; + { TDireccionesContactoDataTableRules } constructor TDireccionesContactoDataTableRules.Create(aDataTable: TDADataTable); diff --git a/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas b/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas index dd8d1e7f..9b253407 100644 --- a/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas +++ b/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas @@ -9,25 +9,25 @@ 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_ContactosDelta = '{DC6F6461-F577-4A1C-A1BB-EC1E73A19C7E}'; - RID_GruposClienteDelta = '{B8209C23-AEBA-42A5-A5BC-459C0774043A}'; - RID_DatosBancariosDelta = '{BFD56656-7A74-44F2-A4DF-2101321A9BA5}'; - RID_ClientesDelta = '{F68DC47E-1F6C-4AB6-9F4D-58DA04D34466}'; - RID_ProveedoresDelta = '{1773D482-A165-4F3C-963F-04057C33EC5F}'; - RID_EmpleadosDelta = '{93D28665-986C-4574-BB95-2E129DF0EF59}'; - RID_DireccionesContactoDelta = '{2DB84B28-7422-43C3-8D75-53D31444CA9D}'; - RID_ClientesDescuentosDelta = '{C9C2DF04-9907-4B61-90A4-F44243B0E952}'; - RID_GruposProveedorDelta = '{EC035096-E936-4A1D-8160-C602BFF6AD1A}'; - RID_GruposEmpleadoDelta = '{938B3E8F-B9BE-42C1-8451-D1ACE543035C}'; - RID_Contactos_RefreshDelta = '{F1258795-69A3-4A08-87A0-E9E0A3E82FA0}'; - RID_ContratosEmpleadosDelta = '{DDEB329D-3B2C-49FF-A10F-DA282E098379}'; - RID_DescripcionesProveedoresDelta = '{845273A7-ABAD-460B-8079-150C94E427AC}'; - RID_PersonalContactoDelta = '{47E745DC-106B-473F-9CB1-BC3193862428}'; + RID_ContactosDelta = '{76362088-C1EE-4136-B602-2F4FE5B4E65F}'; + RID_GruposClienteDelta = '{4E47FE40-C579-45F2-8D30-E8A67549374E}'; + RID_DatosBancariosDelta = '{155E0B8B-5958-4383-A845-188DCB34D694}'; + RID_ClientesDelta = '{DD3F0937-1632-4E02-81AA-D9F9DB99752E}'; + RID_ProveedoresDelta = '{E1C41362-DAC0-4923-AF1B-3E7151FCB617}'; + RID_EmpleadosDelta = '{BB760188-169E-4A71-85E1-76DACB9C2960}'; + RID_DireccionesContactoDelta = '{9DB84202-F502-4E91-8182-C05343B87D04}'; + RID_ClientesDescuentosDelta = '{34323D2F-6886-4CE0-B598-715E117C439C}'; + RID_GruposProveedorDelta = '{E5D84743-C153-4EE6-8F3B-66D11843D594}'; + RID_GruposEmpleadoDelta = '{9BEC700D-7D02-415D-8BCE-A5230A37D7DB}'; + RID_Contactos_RefreshDelta = '{9B20DE7E-89CE-41AE-910E-8B2A8C93976B}'; + RID_ContratosEmpleadosDelta = '{9EDC7470-B7F4-4DC6-8329-7D7AD29B6770}'; + RID_DescripcionesProveedoresDelta = '{BA14BEED-A34C-4CF6-937B-7491E24D854B}'; + RID_PersonalContactoDelta = '{2C7A84B7-C510-47E2-8975-3EC5F7BA0BC4}'; type { IContactosDelta } IContactosDelta = interface(IContactos) - ['{DC6F6461-F577-4A1C-A1BB-EC1E73A19C7E}'] + ['{76362088-C1EE-4136-B602-2F4FE5B4E65F}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; @@ -326,7 +326,7 @@ type { IGruposClienteDelta } IGruposClienteDelta = interface(IGruposCliente) - ['{B8209C23-AEBA-42A5-A5BC-459C0774043A}'] + ['{4E47FE40-C579-45F2-8D30-E8A67549374E}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldDESCRIPCIONValue : String; @@ -372,7 +372,7 @@ type { IDatosBancariosDelta } IDatosBancariosDelta = interface(IDatosBancarios) - ['{BFD56656-7A74-44F2-A4DF-2101321A9BA5}'] + ['{155E0B8B-5958-4383-A845-188DCB34D694}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CONTACTOValue : Integer; @@ -502,7 +502,7 @@ type { IClientesDelta } IClientesDelta = interface(IClientes) - ['{F68DC47E-1F6C-4AB6-9F4D-58DA04D34466}'] + ['{DD3F0937-1632-4E02-81AA-D9F9DB99752E}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; @@ -945,7 +945,7 @@ type { IProveedoresDelta } IProveedoresDelta = interface(IProveedores) - ['{1773D482-A165-4F3C-963F-04057C33EC5F}'] + ['{E1C41362-DAC0-4923-AF1B-3E7151FCB617}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; @@ -1376,7 +1376,7 @@ type { IEmpleadosDelta } IEmpleadosDelta = interface(IEmpleados) - ['{93D28665-986C-4574-BB95-2E129DF0EF59}'] + ['{BB760188-169E-4A71-85E1-76DACB9C2960}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; @@ -1410,6 +1410,8 @@ type function GetOldEXPERIENCIAValue : IROStrings; function GetOldCONTRATOValue : String; function GetOldDURACIONValue : String; + function GetOldFECHA_BAJAValue : DateTime; + function GetOldCAUSA_BAJAValue : String; { Properties } property OldID : Integer read GetOldIDValue; @@ -1444,6 +1446,8 @@ type property OldEXPERIENCIA : IROStrings read GetOldEXPERIENCIAValue; property OldCONTRATO : String read GetOldCONTRATOValue; property OldDURACION : String read GetOldDURACIONValue; + property OldFECHA_BAJA : DateTime read GetOldFECHA_BAJAValue; + property OldCAUSA_BAJA : String read GetOldCAUSA_BAJAValue; end; { TEmpleadosBusinessProcessorRules } @@ -1648,6 +1652,18 @@ type function GetOldDURACIONIsNull: Boolean; virtual; procedure SetDURACIONValue(const aValue: String); virtual; procedure SetDURACIONIsNull(const aValue: Boolean); virtual; + function GetFECHA_BAJAValue: DateTime; virtual; + function GetFECHA_BAJAIsNull: Boolean; virtual; + function GetOldFECHA_BAJAValue: DateTime; virtual; + function GetOldFECHA_BAJAIsNull: Boolean; virtual; + procedure SetFECHA_BAJAValue(const aValue: DateTime); virtual; + procedure SetFECHA_BAJAIsNull(const aValue: Boolean); virtual; + function GetCAUSA_BAJAValue: String; virtual; + function GetCAUSA_BAJAIsNull: Boolean; virtual; + function GetOldCAUSA_BAJAValue: String; virtual; + function GetOldCAUSA_BAJAIsNull: Boolean; virtual; + procedure SetCAUSA_BAJAValue(const aValue: String); virtual; + procedure SetCAUSA_BAJAIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; @@ -1778,6 +1794,14 @@ type property DURACIONIsNull : Boolean read GetDURACIONIsNull write SetDURACIONIsNull; property OldDURACION : String read GetOldDURACIONValue; property OldDURACIONIsNull : Boolean read GetOldDURACIONIsNull; + property FECHA_BAJA : DateTime read GetFECHA_BAJAValue write SetFECHA_BAJAValue; + property FECHA_BAJAIsNull : Boolean read GetFECHA_BAJAIsNull write SetFECHA_BAJAIsNull; + property OldFECHA_BAJA : DateTime read GetOldFECHA_BAJAValue; + property OldFECHA_BAJAIsNull : Boolean read GetOldFECHA_BAJAIsNull; + property CAUSA_BAJA : String read GetCAUSA_BAJAValue write SetCAUSA_BAJAValue; + property CAUSA_BAJAIsNull : Boolean read GetCAUSA_BAJAIsNull write SetCAUSA_BAJAIsNull; + property OldCAUSA_BAJA : String read GetOldCAUSA_BAJAValue; + property OldCAUSA_BAJAIsNull : Boolean read GetOldCAUSA_BAJAIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -1787,7 +1811,7 @@ type { IDireccionesContactoDelta } IDireccionesContactoDelta = interface(IDireccionesContacto) - ['{2DB84B28-7422-43C3-8D75-53D31444CA9D}'] + ['{9DB84202-F502-4E91-8182-C05343B87D04}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CONTACTOValue : Integer; @@ -2002,7 +2026,7 @@ type { IClientesDescuentosDelta } IClientesDescuentosDelta = interface(IClientesDescuentos) - ['{C9C2DF04-9907-4B61-90A4-F44243B0E952}'] + ['{34323D2F-6886-4CE0-B598-715E117C439C}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CLIENTEValue : Integer; @@ -2084,7 +2108,7 @@ type { IGruposProveedorDelta } IGruposProveedorDelta = interface(IGruposProveedor) - ['{EC035096-E936-4A1D-8160-C602BFF6AD1A}'] + ['{E5D84743-C153-4EE6-8F3B-66D11843D594}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldDESCRIPCIONValue : String; @@ -2130,7 +2154,7 @@ type { IGruposEmpleadoDelta } IGruposEmpleadoDelta = interface(IGruposEmpleado) - ['{938B3E8F-B9BE-42C1-8451-D1ACE543035C}'] + ['{9BEC700D-7D02-415D-8BCE-A5230A37D7DB}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldDESCRIPCIONValue : String; @@ -2176,7 +2200,7 @@ type { IContactos_RefreshDelta } IContactos_RefreshDelta = interface(IContactos_Refresh) - ['{F1258795-69A3-4A08-87A0-E9E0A3E82FA0}'] + ['{9B20DE7E-89CE-41AE-910E-8B2A8C93976B}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldNIF_CIFValue : String; @@ -2451,7 +2475,7 @@ type { IContratosEmpleadosDelta } IContratosEmpleadosDelta = interface(IContratosEmpleados) - ['{DDEB329D-3B2C-49FF-A10F-DA282E098379}'] + ['{9EDC7470-B7F4-4DC6-8329-7D7AD29B6770}'] { Property getters and setters } function GetOldCONTRATOValue : String; @@ -2485,7 +2509,7 @@ type { IDescripcionesProveedoresDelta } IDescripcionesProveedoresDelta = interface(IDescripcionesProveedores) - ['{845273A7-ABAD-460B-8079-150C94E427AC}'] + ['{BA14BEED-A34C-4CF6-937B-7491E24D854B}'] { Property getters and setters } function GetOldDESCRIPCION_PROVEEDORValue : String; @@ -2519,7 +2543,7 @@ type { IPersonalContactoDelta } IPersonalContactoDelta = interface(IPersonalContacto) - ['{47E745DC-106B-473F-9CB1-BC3193862428}'] + ['{2C7A84B7-C510-47E2-8975-3EC5F7BA0BC4}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CONTACTOValue : Integer; @@ -6976,6 +7000,68 @@ begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosDURACION] := Null; end; +function TEmpleadosBusinessProcessorRules.GetFECHA_BAJAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_BAJA]; +end; + +function TEmpleadosBusinessProcessorRules.GetFECHA_BAJAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_BAJA]); +end; + +function TEmpleadosBusinessProcessorRules.GetOldFECHA_BAJAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_BAJA]; +end; + +function TEmpleadosBusinessProcessorRules.GetOldFECHA_BAJAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_BAJA]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetFECHA_BAJAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_BAJA] := aValue; +end; + +procedure TEmpleadosBusinessProcessorRules.SetFECHA_BAJAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_BAJA] := Null; +end; + +function TEmpleadosBusinessProcessorRules.GetCAUSA_BAJAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCAUSA_BAJA]; +end; + +function TEmpleadosBusinessProcessorRules.GetCAUSA_BAJAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCAUSA_BAJA]); +end; + +function TEmpleadosBusinessProcessorRules.GetOldCAUSA_BAJAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCAUSA_BAJA]; +end; + +function TEmpleadosBusinessProcessorRules.GetOldCAUSA_BAJAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCAUSA_BAJA]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetCAUSA_BAJAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCAUSA_BAJA] := aValue; +end; + +procedure TEmpleadosBusinessProcessorRules.SetCAUSA_BAJAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCAUSA_BAJA] := Null; +end; + { TDireccionesContactoBusinessProcessorRules } constructor TDireccionesContactoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); diff --git a/Source/Modulos/Contactos/Model/uBizContactos.pas b/Source/Modulos/Contactos/Model/uBizContactos.pas index 141cd1f6..056f5b36 100644 --- a/Source/Modulos/Contactos/Model/uBizContactos.pas +++ b/Source/Modulos/Contactos/Model/uBizContactos.pas @@ -172,6 +172,14 @@ type function GetEXPERIENCIAValue: IROStrings; procedure SetEXPERIENCIAValue(const aValue: IROStrings); + function GetFECHA_BAJAValue: TDateTime; + procedure SetFECHA_BAJAValue(const aValue: TDateTime); + function GetFECHA_BAJAIsNull: Boolean; + procedure SetFECHA_BAJAIsNull(const aValue: Boolean); + + function GetCAUSA_BAJAValue: String; + procedure SetCAUSA_BAJAValue(const aValue: String); + property FECHA_NACIMIENTO: TDateTime read GetFECHA_NACIMIENTOValue write SetFECHA_NACIMIENTOValue; property CATEGORIA: String read GetCATEGORIAValue write SetCATEGORIAValue; property FECHA_ALTA_EMPRESA: TDateTime read GetFECHA_ALTA_EMPRESAValue write SetFECHA_ALTA_EMPRESAValue; @@ -180,6 +188,9 @@ type property FORMACION_COMPLE: IROStrings read GetFORMACION_COMPLEValue write SetFORMACION_COMPLEValue; property FORMACION_RECIBIDA: IROStrings read GetFORMACION_RECIBIDAValue write SetFORMACION_RECIBIDAValue; property EXPERIENCIA: IROStrings read GetEXPERIENCIAValue write SetEXPERIENCIAValue; + property FECHA_BAJA: TDateTime read GetFECHA_BAJAValue write SetFECHA_BAJAValue; + property FECHA_BAJAIsNull: Boolean read GetFECHA_BAJAIsNull write SetFECHA_BAJAIsNull; + property CAUSA_BAJA: String read GetCAUSA_BAJAValue write SetCAUSA_BAJAValue; end; @@ -333,7 +344,7 @@ type property HOMOLOGADO: Integer read GetHOMOLOGADOValue write SetHOMOLOGADOValue; property CERTIFICACION: String read GetCERTIFICACIONValue write SetCERTIFICACIONValue; property GRUPO_PROVEEDOR: String read GetGRUPO_PROVEEDORValue write SetGRUPO_PROVEEDORValue; - property SUBCONTRATA: SmallInt read GetSUBCONTRATAValue write SetSUBCONTRATAValue; + property SUBCONTRATA: SmallInt read GetSUBCONTRATAValue write SetSUBCONTRATAValue; end; @@ -360,6 +371,14 @@ type function GetEXPERIENCIAValue: IROStrings; procedure SetEXPERIENCIAValue(const aValue: IROStrings); + function GetFECHA_BAJAValue: TDateTime; + procedure SetFECHA_BAJAValue(const aValue: TDateTime); + function GetFECHA_BAJAIsNull: Boolean; + procedure SetFECHA_BAJAIsNull(const aValue: Boolean); + + function GetCAUSA_BAJAValue: String; + procedure SetCAUSA_BAJAValue(const aValue: String); + public property FECHA_NACIMIENTO: TDateTime read GetFECHA_NACIMIENTOValue write SetFECHA_NACIMIENTOValue; property CATEGORIA: String read GetCATEGORIAValue write SetCATEGORIAValue; @@ -369,6 +388,9 @@ type property FORMACION_COMPLE: IROStrings read GetFORMACION_COMPLEValue write SetFORMACION_COMPLEValue; property FORMACION_RECIBIDA: IROStrings read GetFORMACION_RECIBIDAValue write SetFORMACION_RECIBIDAValue; property EXPERIENCIA: IROStrings read GetEXPERIENCIAValue write SetEXPERIENCIAValue; + property FECHA_BAJA: TDateTime read GetFECHA_BAJAValue write SetFECHA_BAJAValue; + property FECHA_BAJAIsNull: Boolean read GetFECHA_BAJAIsNull write SetFECHA_BAJAIsNull; + property CAUSA_BAJA: String read GetCAUSA_BAJAValue write SetCAUSA_BAJAValue; procedure IniciarValoresContactoNuevo; override; end; @@ -376,7 +398,7 @@ type implementation uses - uDataTableUtils, Classes, DateUtils, SysUtils, uFactuGES_App; + uDataTableUtils, Classes, DateUtils, SysUtils, uFactuGES_App, Variants; { TBizContacto } @@ -745,6 +767,11 @@ begin result := DataTable.Fields[idx_EmpleadosCATEGORIA].AsString; end; +function TBizEmpleado.GetCAUSA_BAJAValue: String; +begin + result := DataTable.Fields[idx_EmpleadosCAUSA_BAJA].AsString; +end; + function TBizEmpleado.GetEXPERIENCIAValue: IROStrings; begin result := NewROStrings(); @@ -756,6 +783,16 @@ begin result := DataTable.Fields[idx_EmpleadosFECHA_ALTA_EMPRESA].AsDateTime; end; +function TBizEmpleado.GetFECHA_BAJAIsNull: Boolean; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_BAJA].IsNull; +end; + +function TBizEmpleado.GetFECHA_BAJAValue: TDateTime; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_BAJA].AsDateTime; +end; + function TBizEmpleado.GetFECHA_NACIMIENTOValue: TDateTime; begin result := DataTable.Fields[idx_EmpleadosFECHA_NACIMIENTO].AsDateTime; @@ -790,6 +827,11 @@ begin DataTable.Fields[idx_EmpleadosCATEGORIA].AsString := aValue; end; +procedure TBizEmpleado.SetCAUSA_BAJAValue(const aValue: String); +begin + DataTable.Fields[idx_EmpleadosCAUSA_BAJA].AsString := aValue; +end; + procedure TBizEmpleado.SetEXPERIENCIAValue(const aValue: IROStrings); begin DataTable.Fields[idx_EmpleadosEXPERIENCIA].AsString := aValue.Text; @@ -800,6 +842,17 @@ begin DataTable.Fields[idx_EmpleadosFECHA_ALTA_EMPRESA].AsDateTime := aValue; end; +procedure TBizEmpleado.SetFECHA_BAJAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFECHA_BAJA].AsVariant := Null; +end; + +procedure TBizEmpleado.SetFECHA_BAJAValue(const aValue: TDateTime); +begin + DataTable.Fields[idx_EmpleadosFECHA_BAJA].AsDateTime := aValue; +end; + procedure TBizEmpleado.SetFECHA_NACIMIENTOValue(const aValue: TDateTime); begin DataTable.Fields[idx_EmpleadosFECHA_NACIMIENTO].AsDateTime := aValue; diff --git a/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas b/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas index 75d95771..720447df 100644 --- a/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas +++ b/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas @@ -89,6 +89,8 @@ begin ParamByName('EXPERIENCIA').Value := aChange.NewValueByName[fld_EmpleadosEXPERIENCIA]; ParamByName('CONTRATO').Value := aChange.NewValueByName[fld_EmpleadosCONTRATO]; ParamByName('DURACION').Value := aChange.NewValueByName[fld_EmpleadosDURACION]; + ParamByName('FECHA_BAJA').Value := aChange.NewValueByName[fld_EmpleadosFECHA_BAJA]; + ParamByName('CAUSA_BAJA').Value := aChange.NewValueByName[fld_EmpleadosCAUSA_BAJA]; Execute; end; finally @@ -120,7 +122,9 @@ begin ParamByName('FORMACION_RECIBIDA').Value := aChange.NewValueByName[fld_EmpleadosFORMACION_RECIBIDA]; ParamByName('EXPERIENCIA').Value := aChange.NewValueByName[fld_EmpleadosEXPERIENCIA]; ParamByName('CONTRATO').Value := aChange.NewValueByName[fld_EmpleadosCONTRATO]; - ParamByName('DURACION').Value := aChange.NewValueByName[fld_EmpleadosDURACION]; + ParamByName('DURACION').Value := aChange.NewValueByName[fld_EmpleadosDURACION]; + ParamByName('FECHA_BAJA').Value := aChange.NewValueByName[fld_EmpleadosFECHA_BAJA]; + ParamByName('CAUSA_BAJA').Value := aChange.NewValueByName[fld_EmpleadosCAUSA_BAJA]; Execute; end; finally diff --git a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm index e259c8d0..6ec20b49 100644 --- a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm +++ b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm @@ -1103,14 +1103,14 @@ object srvContactos: TsrvContactos DatasetField = 'NOMBRE' TableField = 'NOMBRE' end - item - DatasetField = 'CALLE' - TableField = 'CALLE' - end item DatasetField = 'PERSONA_CONTACTO' TableField = 'PERSONA_CONTACTO' end + item + DatasetField = 'CALLE' + TableField = 'CALLE' + end item DatasetField = 'POBLACION' TableField = 'POBLACION' @@ -1159,6 +1159,14 @@ object srvContactos: TsrvContactos DatasetField = 'NOTAS' TableField = 'NOTAS' end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' + end item DatasetField = 'USUARIO' TableField = 'USUARIO' @@ -1171,14 +1179,14 @@ object srvContactos: TsrvContactos DatasetField = 'REFERENCIA' TableField = 'REFERENCIA' end - item - DatasetField = 'CATEGORIA' - TableField = 'CATEGORIA' - end item DatasetField = 'FECHA_NACIMIENTO' TableField = 'FECHA_NACIMIENTO' end + item + DatasetField = 'CATEGORIA' + TableField = 'CATEGORIA' + end item DatasetField = 'FECHA_ALTA_EMPRESA' TableField = 'FECHA_ALTA_EMPRESA' @@ -1199,14 +1207,6 @@ object srvContactos: TsrvContactos DatasetField = 'EXPERIENCIA' TableField = 'EXPERIENCIA' end - item - DatasetField = 'FECHA_ALTA' - TableField = 'FECHA_ALTA' - end - item - DatasetField = 'FECHA_MODIFICACION' - TableField = 'FECHA_MODIFICACION' - end item DatasetField = 'CONTRATO' TableField = 'CONTRATO' @@ -1214,6 +1214,14 @@ object srvContactos: TsrvContactos item DatasetField = 'DURACION' TableField = 'DURACION' + end + item + DatasetField = 'FECHA_BAJA' + TableField = 'FECHA_BAJA' + end + item + DatasetField = 'CAUSA_BAJA' + TableField = 'CAUSA_BAJA' end> end> Name = 'Empleados' @@ -1401,6 +1409,15 @@ object srvContactos: TsrvContactos Name = 'DURACION' DataType = datString Size = 255 + end + item + Name = 'FECHA_BAJA' + DataType = datDateTime + end + item + Name = 'CAUSA_BAJA' + DataType = datString + Size = 255 end> end item @@ -3457,6 +3474,14 @@ object srvContactos: TsrvContactos item Name = 'DURACION' Value = '' + end + item + Name = 'FECHA_BAJA' + Value = '' + end + item + Name = 'CAUSA_BAJA' + Value = '' end> Statements = < item @@ -3465,10 +3490,11 @@ object srvContactos: TsrvContactos SQL = 'INSERT'#10' INTO EMPLEADOS_DATOS'#10' (ID_EMPLEADO, FECHA_NACIMIENTO' + ', CATEGORIA, FECHA_ALTA_EMPRESA, FORMACION_BASE,'#10' FORMACION_C' + - 'OMPLE, FORMACION_RECIBIDA, EXPERIENCIA, CONTRATO, DURACION)'#10' VA' + - 'LUES'#10' (:ID_EMPLEADO, :FECHA_NACIMIENTO, :CATEGORIA, :FECHA_AL' + - 'TA_EMPRESA, :FORMACION_BASE,'#10' :FORMACION_COMPLE, :FORMACION_R' + - 'ECIBIDA, :EXPERIENCIA, :CONTRATO, :DURACION)'#10 + 'OMPLE, FORMACION_RECIBIDA, EXPERIENCIA, CONTRATO, DURACION, FECH' + + 'A_BAJA,'#10' CAUSA_BAJA)'#10' VALUES'#10' (:ID_EMPLEADO, :FECHA_NACIM' + + 'IENTO, :CATEGORIA, :FECHA_ALTA_EMPRESA, :FORMACION_BASE,'#10' :FO' + + 'RMACION_COMPLE, :FORMACION_RECIBIDA, :EXPERIENCIA, :CONTRATO, :D' + + 'URACION, :FECHA_BAJA,'#10' :CAUSA_BAJA)'#10 StatementType = stSQL ColumnMappings = <> end> @@ -3512,6 +3538,14 @@ object srvContactos: TsrvContactos Name = 'DURACION' Value = '' end + item + Name = 'FECHA_BAJA' + Value = '' + end + item + Name = 'CAUSA_BAJA' + Value = '' + end item Name = 'OLD_ID_EMPLEADO' Value = '' @@ -3526,8 +3560,9 @@ object srvContactos: TsrvContactos 'CHA_ALTA_EMPRESA,'#10' FORMACION_BASE = :FORMACION_BASE,'#10' FORM' + 'ACION_COMPLE = :FORMACION_COMPLE,'#10' FORMACION_RECIBIDA = :FORM' + 'ACION_RECIBIDA,'#10' EXPERIENCIA = :EXPERIENCIA,'#10' CONTRATO = :' + - 'CONTRATO,'#10' DURACION = :DURACION'#10' WHERE'#10' (ID_EMPLEADO = :O' + - 'LD_ID_EMPLEADO)'#10 + 'CONTRATO,'#10' DURACION = :DURACION,'#10' FECHA_BAJA = :FECHA_BAJA' + + ','#10' CAUSA_BAJA = :CAUSA_BAJA'#10' WHERE'#10' (ID_EMPLEADO = :OLD_I' + + 'D_EMPLEADO)'#10 StatementType = stSQL ColumnMappings = <> end> diff --git a/Source/Modulos/Contactos/Views/uEditorEmpleado.dfm b/Source/Modulos/Contactos/Views/uEditorEmpleado.dfm index cf5a9e5b..55b3a2ec 100644 --- a/Source/Modulos/Contactos/Views/uEditorEmpleado.dfm +++ b/Source/Modulos/Contactos/Views/uEditorEmpleado.dfm @@ -110,35 +110,35 @@ inherited fEditorEmpleado: TfEditorEmpleado ExplicitTop = 162 end inherited eCalle: TcxDBTextEdit - Top = 216 - ExplicitTop = 216 + Top = 243 + ExplicitTop = 243 ExplicitWidth = 341 Width = 341 end inherited cbProvincia: TcxDBComboBox - Top = 243 - ExplicitTop = 243 + Top = 270 + ExplicitTop = 270 ExplicitWidth = 240 Width = 240 end inherited cbPoblacion: TcxDBComboBox - Top = 270 - ExplicitTop = 270 + Top = 297 + ExplicitTop = 297 ExplicitWidth = 341 Width = 341 end inherited eCodigoPostal: TcxDBTextEdit Left = 397 - Top = 243 + Top = 270 ExplicitLeft = 397 - ExplicitTop = 243 + ExplicitTop = 270 end inherited eObservaciones: TcxDBMemo - Top = 348 - ExplicitTop = 348 + Top = 375 + ExplicitTop = 375 ExplicitWidth = 871 - ExplicitHeight = 90 - Height = 90 + ExplicitHeight = 63 + Height = 63 Width = 871 end inherited eFechaNacimiento: TcxDBDateEdit @@ -167,6 +167,14 @@ inherited fEditorEmpleado: TfEditorEmpleado ExplicitWidth = 308 Width = 308 end + inherited eDuracionContrato: TcxDBTextEdit + Left = 585 + Top = 297 + ExplicitLeft = 585 + ExplicitTop = 297 + ExplicitWidth = 308 + Width = 308 + end inherited eTlfParticular: TcxDBTextEdit Left = 585 Top = 57 @@ -205,14 +213,6 @@ inherited fEditorEmpleado: TfEditorEmpleado ExplicitWidth = 341 Width = 341 end - inherited eDuracionContrato: TcxDBTextEdit - Left = 585 - Top = 297 - ExplicitLeft = 585 - ExplicitTop = 297 - ExplicitWidth = 308 - Width = 308 - end inherited eNIFCIF: TcxDBTextEdit Left = 259 Top = 30 @@ -239,6 +239,19 @@ inherited fEditorEmpleado: TfEditorEmpleado ExplicitWidth = 279 Width = 279 end + inherited eFechaBaja: TcxDBDateEdit + Top = 165 + Properties.ImmediatePost = True + ExplicitTop = 165 + ExplicitWidth = 341 + Width = 341 + end + inherited eCausaBaja: TcxDBTextEdit + Top = 192 + ExplicitTop = 192 + ExplicitWidth = 341 + Width = 341 + end inherited ePaginaWeb: TcxDBHyperLinkEdit Left = 585 Top = 217 @@ -254,8 +267,8 @@ inherited fEditorEmpleado: TfEditorEmpleado Width = 105 end inherited ePersonaContacto: TcxDBTextEdit - Top = 297 - ExplicitTop = 297 + Top = 324 + ExplicitTop = 324 ExplicitWidth = 341 Width = 341 end @@ -283,6 +296,18 @@ inherited fEditorEmpleado: TfEditorEmpleado inherited ToolBar1: TToolBar Width = 915 ExplicitWidth = 915 + inherited ToolButton1: TToolButton + ExplicitWidth = 62 + end + inherited ToolButton4: TToolButton + ExplicitWidth = 74 + end + inherited ToolButton2: TToolButton + ExplicitWidth = 67 + end + inherited ToolButton7: TToolButton + ExplicitWidth = 117 + end end end end @@ -304,6 +329,18 @@ inherited fEditorEmpleado: TfEditorEmpleado inherited ToolBar1: TToolBar Width = 915 ExplicitWidth = 915 + inherited ToolButton1: TToolButton + ExplicitWidth = 62 + end + inherited ToolButton4: TToolButton + ExplicitWidth = 74 + end + inherited ToolButton2: TToolButton + ExplicitWidth = 67 + end + inherited ToolButton7: TToolButton + ExplicitWidth = 117 + end end end end diff --git a/Source/Modulos/Contactos/Views/uViewEmpleado.dfm b/Source/Modulos/Contactos/Views/uViewEmpleado.dfm index 887bbeaa..97a2baeb 100644 --- a/Source/Modulos/Contactos/Views/uViewEmpleado.dfm +++ b/Source/Modulos/Contactos/Views/uViewEmpleado.dfm @@ -11,55 +11,55 @@ inherited frViewEmpleado: TfrViewEmpleado ExplicitWidth = 673 ExplicitHeight = 424 inherited PngSpeedButton1: TPngSpeedButton - Left = 628 - ExplicitLeft = 628 + Left = 611 + ExplicitLeft = 611 end inherited PngSpeedButton2: TPngSpeedButton - Left = 628 - ExplicitLeft = 628 + Left = 611 + ExplicitLeft = 611 end inherited PngSpeedButton3: TPngSpeedButton - Left = 628 - ExplicitLeft = 628 + Left = 611 + ExplicitLeft = 611 end inherited eCalle: TcxDBTextEdit Left = 121 - Top = 226 - TabOrder = 6 + Top = 247 + TabOrder = 8 ExplicitLeft = 121 - ExplicitTop = 226 + ExplicitTop = 247 ExplicitWidth = 239 Width = 239 end inherited cbProvincia: TcxDBComboBox Left = 121 - Top = 253 - TabOrder = 7 + Top = 274 + TabOrder = 9 ExplicitLeft = 121 - ExplicitTop = 253 + ExplicitTop = 274 ExplicitWidth = 138 Width = 138 end inherited cbPoblacion: TcxDBComboBox Left = 121 - Top = 280 - TabOrder = 9 + Top = 301 + TabOrder = 11 ExplicitLeft = 121 - ExplicitTop = 280 + ExplicitTop = 301 ExplicitWidth = 239 Width = 239 end inherited eCodigoPostal: TcxDBTextEdit - Left = 295 - Top = 253 - TabOrder = 8 - ExplicitLeft = 295 - ExplicitTop = 253 + Left = 285 + Top = 274 + TabOrder = 10 + ExplicitLeft = 285 + ExplicitTop = 274 end inherited eObservaciones: TcxDBMemo - Top = 364 - TabOrder = 20 - ExplicitTop = 364 + Top = 385 + TabOrder = 22 + ExplicitTop = 385 ExplicitWidth = 629 ExplicitHeight = 38 Height = 38 @@ -124,7 +124,7 @@ inherited frViewEmpleado: TfrViewEmpleado Width = 239 end object cbContrato: TcxDBComboBox [11] - Left = 485 + Left = 475 Top = 280 DataBinding.DataField = 'CONTRATO' DataBinding.DataSource = dsContacto @@ -144,11 +144,11 @@ inherited frViewEmpleado: TfrViewEmpleado StyleFocused.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True - TabOrder = 18 + TabOrder = 20 Width = 166 end object eDuracionContrato: TcxDBTextEdit [12] - Left = 485 + Left = 475 Top = 307 DataBinding.DataField = 'DURACION' DataBinding.DataSource = dsContacto @@ -162,34 +162,34 @@ inherited frViewEmpleado: TfrViewEmpleado StyleFocused.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True - TabOrder = 19 + TabOrder = 21 Width = 166 end inherited eTlfParticular: TcxDBTextEdit - Left = 485 - TabOrder = 12 - ExplicitLeft = 485 + Left = 475 + TabOrder = 14 + ExplicitLeft = 475 ExplicitWidth = 166 Width = 166 end inherited eTlfTrabajo: TcxDBTextEdit - Left = 485 - TabOrder = 11 - ExplicitLeft = 485 + Left = 475 + TabOrder = 13 + ExplicitLeft = 475 ExplicitWidth = 166 Width = 166 end inherited eTlfMovil: TcxDBTextEdit - Left = 485 - TabOrder = 13 - ExplicitLeft = 485 + Left = 475 + TabOrder = 15 + ExplicitLeft = 475 ExplicitWidth = 166 Width = 166 end inherited eFax: TcxDBTextEdit - Left = 485 - TabOrder = 14 - ExplicitLeft = 485 + Left = 475 + TabOrder = 16 + ExplicitLeft = 475 ExplicitWidth = 166 Width = 166 end @@ -200,31 +200,31 @@ inherited frViewEmpleado: TfrViewEmpleado Width = 239 end inherited eNIFCIF: TcxDBTextEdit - Left = 227 - ExplicitLeft = 227 - ExplicitWidth = 133 - Width = 133 + Left = 225 + ExplicitLeft = 225 + ExplicitWidth = 126 + Width = 126 end inherited eMailTrabajo: TcxDBHyperLinkEdit - Left = 485 + Left = 475 Properties.Prefix = 'mailto:' - TabOrder = 15 - ExplicitLeft = 485 + TabOrder = 17 + ExplicitLeft = 475 ExplicitWidth = 137 Width = 137 end inherited eMailParticular: TcxDBHyperLinkEdit - Left = 485 + Left = 475 Properties.Prefix = 'mailto:' - TabOrder = 16 - ExplicitLeft = 485 + TabOrder = 18 + ExplicitLeft = 475 ExplicitWidth = 137 Width = 137 end inherited ePaginaWeb: TcxDBHyperLinkEdit - Left = 485 - TabOrder = 17 - ExplicitLeft = 485 + Left = 475 + TabOrder = 19 + ExplicitLeft = 475 ExplicitWidth = 137 Width = 137 end @@ -236,13 +236,50 @@ inherited frViewEmpleado: TfrViewEmpleado end inherited ePersonaContacto: TcxDBTextEdit Left = 121 - Top = 307 - TabOrder = 10 + Top = 328 + TabOrder = 12 ExplicitLeft = 121 - ExplicitTop = 307 + ExplicitTop = 328 ExplicitWidth = 239 Width = 239 end + object eFechaBaja: TcxDBDateEdit [24] + Left = 121 + Top = 163 + DataBinding.DataField = 'FECHA_BAJA' + DataBinding.DataSource = dsContacto + Style.BorderColor = clWindowFrame + Style.BorderStyle = ebs3D + Style.HotTrack = False + Style.LookAndFeel.NativeStyle = True + Style.ButtonStyle = bts3D + Style.PopupBorderStyle = epbsFrame3D + StyleDisabled.LookAndFeel.NativeStyle = True + StyleFocused.LookAndFeel.NativeStyle = True + StyleHot.LookAndFeel.NativeStyle = True + TabOrder = 6 + Width = 229 + end + object eCausaBaja: TcxDBTextEdit [25] + Left = 121 + Top = 190 + DataBinding.DataField = 'CAUSA_BAJA' + DataBinding.DataSource = dsContacto + Style.BorderColor = clWindowFrame + Style.BorderStyle = ebs3D + Style.Color = clWindow + Style.HotTrack = False + Style.LookAndFeel.Kind = lfStandard + Style.LookAndFeel.NativeStyle = True + StyleDisabled.LookAndFeel.Kind = lfStandard + StyleDisabled.LookAndFeel.NativeStyle = True + StyleFocused.LookAndFeel.Kind = lfStandard + StyleFocused.LookAndFeel.NativeStyle = True + StyleHot.LookAndFeel.Kind = lfStandard + StyleHot.LookAndFeel.NativeStyle = True + TabOrder = 7 + Width = 229 + end inherited dxLayoutControlContactoGroup_Root: TdxLayoutGroup inherited dxLayoutControlContactoGroup9: TdxLayoutGroup inherited dxLayoutControlContactoGroup4: TdxLayoutGroup @@ -274,6 +311,16 @@ inherited frViewEmpleado: TfrViewEmpleado Control = cbCategoria ControlOptions.ShowBorder = False end + object dxLayoutControlContactoItem23: TdxLayoutItem + Caption = 'Fecha de baja:' + Control = eFechaBaja + ControlOptions.ShowBorder = False + end + object dxLayoutControlContactoItem24: TdxLayoutItem + Caption = 'Causa de baja:' + Control = eCausaBaja + ControlOptions.ShowBorder = False + end end inherited dxLayoutControlContactoGroup3: TdxLayoutGroup inherited dxLayoutControlContactoItem167: TdxLayoutItem diff --git a/Source/Modulos/Contactos/Views/uViewEmpleado.pas b/Source/Modulos/Contactos/Views/uViewEmpleado.pas index f42043a0..a689aad8 100644 --- a/Source/Modulos/Contactos/Views/uViewEmpleado.pas +++ b/Source/Modulos/Contactos/Views/uViewEmpleado.pas @@ -33,6 +33,10 @@ type dxLayoutControlContactoItem22: TdxLayoutItem; eDuracionContrato: TcxDBTextEdit; dxLayoutControlContactoGroup14: TdxLayoutGroup; + dxLayoutControlContactoItem23: TdxLayoutItem; + eFechaBaja: TcxDBDateEdit; + dxLayoutControlContactoItem24: TdxLayoutItem; + eCausaBaja: TcxDBTextEdit; procedure CustomViewCreate(Sender: TObject); procedure CustomViewDestroy(Sender: TObject); procedure cbCategoriaPropertiesInitPopup(Sender: TObject); diff --git a/Source/Modulos/Contactos/Views/uViewEmpleados.dfm b/Source/Modulos/Contactos/Views/uViewEmpleados.dfm index a5f37389..e401f266 100644 --- a/Source/Modulos/Contactos/Views/uViewEmpleados.dfm +++ b/Source/Modulos/Contactos/Views/uViewEmpleados.dfm @@ -1,5 +1,7 @@ inherited frViewEmpleados: TfrViewEmpleados inherited cxGrid: TcxGrid + RootLevelOptions.DetailTabsPosition = dtpTop + OnActiveTabChanged = cxGridActiveTabChanged inherited cxGridView: TcxGridDBTableView DataController.Summary.FooterSummaryItems = < item @@ -27,6 +29,19 @@ inherited frViewEmpleados: TfrViewEmpleados inherited cxGridViewEMAIL_1: TcxGridDBColumn Visible = False end + object cxGridViewFECHA_BAJA: TcxGridDBColumn + Caption = 'Fecha de baja' + DataBinding.FieldName = 'FECHA_BAJA' + end + end + inherited cxGridLevel: TcxGridLevel + Caption = 'Todos' + end + object cxGridLevel1: TcxGridLevel + Caption = 'Activos' + end + object cxGridLevel2: TcxGridLevel + Caption = 'Inactivos' end end inherited frViewFiltroBase1: TfrViewFiltroBase @@ -51,6 +66,19 @@ inherited frViewEmpleados: TfrViewEmpleados BuiltInReportLink = True end end + inherited cxStyleRepository1: TcxStyleRepository + object cxStyleActivos: TcxStyle + end + object cxStyleInactivos: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = DEFAULT_CHARSET + Font.Color = clMaroon + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + TextColor = clSilver + end + end inherited GridPNGImageList: TPngImageList PngImages = < item diff --git a/Source/Modulos/Contactos/Views/uViewEmpleados.pas b/Source/Modulos/Contactos/Views/uViewEmpleados.pas index 1db3a917..c01017df 100644 --- a/Source/Modulos/Contactos/Views/uViewEmpleados.pas +++ b/Source/Modulos/Contactos/Views/uViewEmpleados.pas @@ -25,10 +25,78 @@ type end; TfrViewEmpleados = class(TfrViewContactos, IViewEmpleados) + cxGridLevel1: TcxGridLevel; + cxGridLevel2: TcxGridLevel; + cxGridViewFECHA_BAJA: TcxGridDBColumn; + cxStyleActivos: TcxStyle; + cxStyleInactivos: TcxStyle; + procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: TcxGridLevel); + procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + private + //Filtros relativos a la vista + procedure AnadirFiltroSituaciones; + + public + procedure AnadirOtrosFiltros; override; end; implementation - {$R *.dfm} +uses schContactosClient_Intf; + +procedure TfrViewEmpleados.AnadirFiltroSituaciones; +var + FFiltro : TcxFilterCriteriaItemList; +begin + FFiltro := AddFilterGrid(fboAnd); + + case cxGrid.ActiveLevel.Index of + 1 : FFiltro.AddItem(cxGridViewFECHA_BAJA, foEqual, Null, 'ACTIVOS'); + 2 : FFiltro.AddItem(cxGridViewFECHA_BAJA, foNotEqual, Null, 'INACTIVOS'); + end; +end; + +procedure TfrViewEmpleados.AnadirOtrosFiltros; +begin + inherited; + + AnadirFiltroSituaciones; + + //Finalmente activamos el filtro si tenemos algo + if cxGridView.DataController.Filter.IsEmpty then + cxGridView.DataController.Filter.Active := False + else + cxGridView.DataController.Filter.Active := True; + cxGrid.ActiveLevel.GridView := cxGridView; +end; + +procedure TfrViewEmpleados.cxGridActiveTabChanged(Sender: TcxCustomGrid; + ALevel: TcxGridLevel); +begin + inherited; + RefrescarFiltro; +end; + +procedure TfrViewEmpleados.cxGridViewStylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + IndiceCol: Integer; + ASituacion: String; +begin + inherited; + if Assigned(ARecord) then + begin + IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_EmpleadosFECHA_BAJA).Index; + ASituacion := VarToStr(ARecord.DisplayTexts[IndiceCol]); + if Length(ASituacion) = 0 then + AStyle.TextColor := cxStyleActivos.TextColor + else + AStyle.TextColor := cxStyleInactivos.TextColor; + end; +end; + end. diff --git a/Source/Servidor/FactuGES_Server.RES b/Source/Servidor/FactuGES_Server.RES index fbd828f4..e2e74863 100644 Binary files a/Source/Servidor/FactuGES_Server.RES and b/Source/Servidor/FactuGES_Server.RES differ diff --git a/Source/Servidor/FactuGES_Server.dpr b/Source/Servidor/FactuGES_Server.dpr index a299d7ee..6a91b438 100644 --- a/Source/Servidor/FactuGES_Server.dpr +++ b/Source/Servidor/FactuGES_Server.dpr @@ -84,8 +84,6 @@ uses AHWord97 in 'Utiles\AHWord97.pas', uSistemaFunc in '..\Base\Utiles\uSistemaFunc.pas', uRptWordAlbaranCliente in '..\Modulos\Albaranes de cliente\Reports\uRptWordAlbaranCliente.pas' {RptWordAlbaranCliente: TDataModule}, - schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas', - schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas', srvReferencias_Impl in '..\Modulos\Referencias\Servidor\srvReferencias_Impl.pas' {srvReferencias: TDataAbstractService}, schReferenciasServer_Intf in '..\Modulos\Referencias\Model\schReferenciasServer_Intf.pas', schReferenciasClient_Intf in '..\Modulos\Referencias\Model\schReferenciasClient_Intf.pas', @@ -128,7 +126,9 @@ uses uRptPresupuestosCliente_Server in '..\Modulos\Presupuestos de cliente\Reports\uRptPresupuestosCliente_Server.pas' {RptPresupuestosCliente: TDataModule}, uRptWordPresupuestoCliente in '..\Modulos\Presupuestos de cliente\Reports\uRptWordPresupuestoCliente.pas' {RptWordPresupuestoCliente: TDataModule}, schFacturasProveedorClient_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas', - schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas'; + schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas', + schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas', + schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas'; {$R *.res} {$R ..\Servicios\RODLFile.res} diff --git a/Source/Servidor/FactuGES_Server.rc b/Source/Servidor/FactuGES_Server.rc index 70d748e5..b51f4147 100644 --- a/Source/Servidor/FactuGES_Server.rc +++ b/Source/Servidor/FactuGES_Server.rc @@ -14,7 +14,7 @@ BEGIN BEGIN VALUE "FileVersion", "1.2.3.0\0" VALUE "ProductVersion", "1.2.3.0\0" - VALUE "CompileDate", "miércoles, 20 de agosto de 2008 15:40\0" + VALUE "CompileDate", "miércoles, 20 de agosto de 2008 16:35\0" END END BLOCK "VarFileInfo"