diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql index 53f33db..7e9e819 100644 --- a/Database/scripts/factuges.sql +++ b/Database/scripts/factuges.sql @@ -570,6 +570,7 @@ CREATE TABLE CONTACTOS ( POBLACION VARCHAR(255), PROVINCIA VARCHAR(255), CODIGO_POSTAL VARCHAR(10), + PAIS VARCHAR(255), TELEFONO_1 VARCHAR(25), TELEFONO_2 VARCHAR(25), MOVIL_1 VARCHAR(25), diff --git a/Resources/Logotipo-K-ingles.jpg b/Resources/Logotipo-K-ingles.jpg new file mode 100644 index 0000000..4b36291 Binary files /dev/null and b/Resources/Logotipo-K-ingles.jpg differ diff --git a/Resources/logotipo-cmc.jpg b/Resources/logotipo-cmc.jpg new file mode 100644 index 0000000..956ad53 Binary files /dev/null and b/Resources/logotipo-cmc.jpg differ diff --git a/Source/ApplicationBase/ApplicationBase.dproj b/Source/ApplicationBase/ApplicationBase.dproj index ce679d9..ef59f35 100644 --- a/Source/ApplicationBase/ApplicationBase.dproj +++ b/Source/ApplicationBase/ApplicationBase.dproj @@ -55,10 +55,10 @@ MainSource - - - - + + + + diff --git a/Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.dfm b/Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.dfm index 18d94be..5e7ae00 100644 --- a/Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.dfm +++ b/Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.dfm @@ -97,7 +97,7 @@ object fEditorDatosBancariosEmpresa: TfEditorDatosBancariosEmpresa Width = 78 Height = 13 AutoSize = False - Caption = 'BIC:' + Caption = 'BIC / SWIFT:' end object eNombre: TDBEdit Left = 109 diff --git a/Source/ApplicationBase/ProvinciasPoblaciones/Controller/uProvinciasPoblacionesController.pas b/Source/ApplicationBase/ProvinciasPoblaciones/Controller/uProvinciasPoblacionesController.pas index 7a29f39..a22b2b8 100644 --- a/Source/ApplicationBase/ProvinciasPoblaciones/Controller/uProvinciasPoblacionesController.pas +++ b/Source/ApplicationBase/ProvinciasPoblaciones/Controller/uProvinciasPoblacionesController.pas @@ -10,6 +10,7 @@ uses type IProvinciasPoblacionesController = interface(IControllerBase) ['{777EDE6C-DAB6-4D96-BA57-AE3DAF8A3F78}'] + function DarListaPaises : TStringList; function DarListaProvincias : TStringList; function DarListaPoblaciones (const AID_Provincia : Integer) : TStringList; end; @@ -18,6 +19,7 @@ type protected FDataModule : IDataModuleProvinciasPoblaciones; public + function DarListaPaises : TStringList; function DarListaProvincias : TStringList; function DarListaPoblaciones (const AID_Provincia : Integer) : TStringList; destructor Destroy; override; @@ -37,6 +39,16 @@ begin FDataModule := TDataModuleProvinciasPoblaciones.Create(NIL); end; +function TProvinciasPoblacionesController.DarListaPaises: TStringList; +begin + ShowHourglassCursor; + try + Result := FDataModule.DarListaPaises; + finally + HideHourglassCursor; + end; +end; + function TProvinciasPoblacionesController.DarListaPoblaciones( const AID_Provincia: Integer): TStringList; begin diff --git a/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.dfm b/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.dfm index d02b807..cad0dc3 100644 --- a/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.dfm +++ b/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.dfm @@ -1,7 +1,5 @@ -object DataModuleProvinciasPoblaciones: TDataModuleProvinciasPoblaciones +inherited DataModuleProvinciasPoblaciones: TDataModuleProvinciasPoblaciones OldCreateOrder = False - Height = 150 - Width = 215 object RORemoteService: TRORemoteService Message = dmConexion.ROMessage Channel = dmConexion.ROChannel diff --git a/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.pas b/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.pas index 5467fc7..19a4895 100644 --- a/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.pas +++ b/Source/ApplicationBase/ProvinciasPoblaciones/Data/uDataModuleProvinciasPoblaciones.pas @@ -8,6 +8,7 @@ uses type IDataModuleProvinciasPoblaciones = interface ['{E73DB3C4-BC57-44E8-A64B-F86AE2DCB7D6}'] + function DarListaPaises : TStringList; function DarListaProvincias : TStringList; function DarListaPoblaciones (const AID_Provincia : Integer) : TStringList; end; @@ -15,6 +16,7 @@ type TDataModuleProvinciasPoblaciones = class(TDataModuleBase, IDataModuleProvinciasPoblaciones) RORemoteService: TRORemoteService; public + function DarListaPaises : TStringList; function DarListaProvincias : TStringList; function DarListaPoblaciones (const AID_Provincia : Integer) : TStringList; end; @@ -28,6 +30,15 @@ uses { TDataModuleProvinciasPoblaciones } +function TDataModuleProvinciasPoblaciones.DarListaPaises: TStringList; +var + ABinary : Binary; +begin + ABinary := (RORemoteService as IsrvProvinciasPoblaciones).DarListaPaises; + Result := TStringList.Create; + Result.LoadFromStream(ABinary); +end; + function TDataModuleProvinciasPoblaciones.DarListaPoblaciones( const AID_Provincia: Integer): TStringList; var diff --git a/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.dfm b/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.dfm index 6565304..6865569 100644 --- a/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.dfm +++ b/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.dfm @@ -5,6 +5,80 @@ object srvProvinciasPoblaciones: TsrvProvinciasPoblaciones object schProvinciasPoblaciones: TDASchema ConnectionManager = dmServer.ConnectionManager Datasets = < + item + Params = <> + Statements = < + item + ConnectionType = 'Interbase' + Default = True + TargetTable = 'PAISES' + Name = 'IBX' + SQL = + 'SELECT '#10' ID, ISO_NUM, ISO_DES1, ISO_DES2, DESCRIPCION, ACTIVO' + + #10' FROM'#10' PAISES'#10' WHERE (ACTIVO = 1)'#10 + StatementType = stSQL + ColumnMappings = < + item + DatasetField = 'ID' + TableField = 'ID' + end + item + DatasetField = 'ISO_NUM' + TableField = 'ISO_NUM' + end + item + DatasetField = 'ISO_DES1' + TableField = 'ISO_DES1' + end + item + DatasetField = 'ISO_DES2' + TableField = 'ISO_DES2' + end + item + DatasetField = 'DESCRIPCION' + TableField = 'DESCRIPCION' + end + item + DatasetField = 'ACTIVO' + TableField = 'ACTIVO' + end> + end> + Name = 'Paises' + Fields = < + item + Name = 'ID' + DataType = datInteger + Required = True + InPrimaryKey = True + end + item + Name = 'ISO_NUM' + DataType = datInteger + Required = True + end + item + Name = 'ISO_DES1' + DataType = datString + Size = 2 + Required = True + end + item + Name = 'ISO_DES2' + DataType = datString + Size = 3 + Required = True + end + item + Name = 'DESCRIPCION' + DataType = datString + Size = 255 + Required = True + end + item + Name = 'ACTIVO' + DataType = datSmallInt + end> + end item IsPublic = False Params = <> diff --git a/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.pas b/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.pas index a71d13d..b9875c5 100644 --- a/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.pas +++ b/Source/ApplicationBase/ProvinciasPoblaciones/Servidor/srvProvinciasPoblaciones_Impl.pas @@ -26,6 +26,7 @@ type private protected { IsrvProvinciasPoblaciones methods } + function DarListaPaises: Binary; function DarListaProvincias: Binary; function DarListaPoblaciones(const ID_Provincia: Integer): Binary; end; @@ -80,6 +81,42 @@ begin end; end; +function TsrvProvinciasPoblaciones.DarListaPaises: Binary; +var + ASchema : TDASchema; + AConn : IDAConnection; + dsData: IDADataset; + ALista : TStringList; +begin + Result := Binary.Create; + + ASchema := schProvinciasPoblaciones; + AConn := dmServer.ConnectionManager.NewConnection(dmServer.ConnectionManager.GetDefaultConnectionName); + + try + dsData := ASchema.NewDataset(AConn, 'Paises'); + except + RaiseError('No existe la tabla PAISES'); + end; + + ALista := TStringList.Create; + try + dsData.Active := True; + ALista.Sorted := True; + while not dsData.EOF do + begin + ALista.Add(Format('%s=%s', [dsData.Fields[4].AsString, dsData.Fields[2].AsString])); + dsData.Next; + end; + + ALista.SaveToStream(Result); + finally + FreeANDNIL(ALista); + dsData := NIL; + AConn := NIL; + end; +end; + function TsrvProvinciasPoblaciones.DarListaPoblaciones(const ID_Provincia: Integer): Binary; var ASchema : TDASchema; diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj index 1035ed3..6e90b8b 100644 --- a/Source/Base/Base.dproj +++ b/Source/Base/Base.dproj @@ -45,8 +45,6 @@ Package FalseTrueFalseLibreria base de FactuGESFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0 - - Microsoft Office 2000 Sample Automation Server Wrapper Components Microsoft Office XP Sample Automation Server Wrapper Components Base.dpk @@ -60,63 +58,63 @@
DataModuleImpresiones
TDataModule
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
DataModuleRegistroCorreos
TDataModule
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fConfigurarConexion
TForm diff --git a/Source/Base/Utiles/uNumUtils.pas b/Source/Base/Utiles/uNumUtils.pas index aa75542..569083d 100644 --- a/Source/Base/Utiles/uNumUtils.pas +++ b/Source/Base/Utiles/uNumUtils.pas @@ -28,12 +28,27 @@ interface Function IntToLetras(Numero:LongInt):String; Function xxIntToLetras(Valor:LongInt):String; Function CifraToLetras(Cifra: Double): String; +function RoundCurrency(const Value: Currency): Currency; implementation uses SysUtils, Dialogs; // SysUtils, Windows, Dialogs, Messages, Classes, Graphics, Controls, Forms, StdCtrls; +function RoundCurrency(const Value: Currency): Currency; +var + V64: Int64 absolute Result; + Decimals: Integer; +begin + Result := Value; + Decimals := V64 mod 100; + Dec(V64, Decimals); + case Decimals of + -99 .. -50 : Dec(V64, 100); + 50 .. 99 : Inc(V64, 100); + end; +end; + Function xxIntToLetras(Valor:LongInt):String; const aUnitat : array[1..15] of String = ('UNO','DOS','TRES','CUATRO','CINCO','SEIS', diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj index 38530e8..d9033b4 100644 --- a/Source/Cliente/FactuGES.dproj +++ b/Source/Cliente/FactuGES.dproj @@ -53,7 +53,7 @@ Delphi.Personality VCLApplication -FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse4390FalseFalseFalseFalseFalse30821252Rodax Software S.L.4.3.9.0FactuGESFactuGES4.3.9.0FactuGES.dprFalse +FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse4400FalseFalseFalseFalseFalse30821252Rodax Software S.L.4.4.0.0FactuGESFactuGES4.4.0.0FactuGES.dprFalse diff --git a/Source/Cliente/FactuGES.rc b/Source/Cliente/FactuGES.rc index e6c3d0d..3c98570 100644 --- a/Source/Cliente/FactuGES.rc +++ b/Source/Cliente/FactuGES.rc @@ -1,7 +1,7 @@ MAINICON ICON "C:\Codigo\Resources\Iconos\Factuges.ico" 1 VERSIONINFO -FILEVERSION 4,3,9,0 -PRODUCTVERSION 4,3,9,0 +FILEVERSION 4,4,0,0 +PRODUCTVERSION 4,4,0,0 FILEFLAGSMASK 0x3FL FILEFLAGS 0x00L FILEOS 0x40004L @@ -13,10 +13,10 @@ BEGIN BLOCK "0C0A04E4" BEGIN VALUE "CompanyName", "Rodax Software S.L.\0" - VALUE "FileVersion", "4.3.9.0\0" + VALUE "FileVersion", "4.4.0.0\0" VALUE "InternalName", "FactuGES\0" VALUE "ProductName", "FactuGES\0" - VALUE "ProductVersion", "4.3.9.0\0" + VALUE "ProductVersion", "4.4.0.0\0" END END BLOCK "VarFileInfo" diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index c511d4b..8237755 100644 Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ diff --git a/Source/Informes/6/en/InfAlbaranCliente.fr3 b/Source/Informes/6/en/InfAlbaranCliente.fr3 new file mode 100644 index 0000000..7ef75f3 --- /dev/null +++ b/Source/Informes/6/en/InfAlbaranCliente.fr3 @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Informes/6/en/InfFacturaCliente.fr3 b/Source/Informes/6/en/InfFacturaCliente.fr3 new file mode 100644 index 0000000..1393749 --- /dev/null +++ b/Source/Informes/6/en/InfFacturaCliente.fr3 @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Informes/6/en/InfFacturaProforma.fr3 b/Source/Informes/6/en/InfFacturaProforma.fr3 new file mode 100644 index 0000000..bd0e87f --- /dev/null +++ b/Source/Informes/6/en/InfFacturaProforma.fr3 @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Informes/6/en/InfPedidoCliente.fr3 b/Source/Informes/6/en/InfPedidoCliente.fr3 new file mode 100644 index 0000000..34d163f --- /dev/null +++ b/Source/Informes/6/en/InfPedidoCliente.fr3 @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Informes/6/en/InfPresupuestoCliente.fr3 b/Source/Informes/6/en/InfPresupuestoCliente.fr3 new file mode 100644 index 0000000..23de16e --- /dev/null +++ b/Source/Informes/6/en/InfPresupuestoCliente.fr3 @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Informes/8/InfFacturaCliente.fr3 b/Source/Informes/8/InfFacturaCliente.fr3 index 564a907..4768d4a 100644 --- a/Source/Informes/8/InfFacturaCliente.fr3 +++ b/Source/Informes/8/InfFacturaCliente.fr3 @@ -1,5 +1,5 @@ - + @@ -12,7 +12,7 @@ - + @@ -35,6 +35,7 @@ + @@ -46,7 +47,6 @@ - diff --git a/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas b/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas index 0d15694..f6a7531 100644 --- a/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas +++ b/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas @@ -423,6 +423,7 @@ begin AAlbaran.POBLACION := ADireccionEnvio.POBLACION; AAlbaran.CODIGO_POSTAL := ADireccionEnvio.CODIGO_POSTAL; AAlbaran.PROVINCIA := ADireccionEnvio.PROVINCIA; + AAlbaran.PAIS := ADireccionEnvio.PAIS; AAlbaran.TELEFONO := ADireccionEnvio.TELEFONO; AAlbaran.PERSONA_CONTACTO := ADireccionEnvio.PERSONA_CONTACTO; @@ -1200,6 +1201,7 @@ begin AAlbaran.DataTable.FieldByName(fld_AlbaranesClientePOBLACION).Clear; AAlbaran.DataTable.FieldByName(fld_AlbaranesClienteCODIGO_POSTAL).Clear; AAlbaran.DataTable.FieldByName(fld_AlbaranesClientePROVINCIA).Clear; + AAlbaran.DataTable.FieldByName(fld_AlbaranesClientePAIS).Clear; AAlbaran.DataTable.FieldByName(fld_AlbaranesClienteTELEFONO).Clear; if not bEnEdicion then diff --git a/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm b/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm index 806fef2..7ddae8f 100644 --- a/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm +++ b/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.dfm @@ -326,6 +326,11 @@ inherited DataModuleAlbaranesCliente: TDataModuleAlbaranesCliente item Name = 'BLOQUEADO' DataType = datSmallInt + end + item + Name = 'PAIS' + DataType = datString + Size = 255 end> Params = <> StreamingOptions = [soDisableEventsWhileStreaming] diff --git a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas index aee3e85..8cfb00d 100644 --- a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas +++ b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteClient_Intf.pas @@ -9,9 +9,9 @@ const { Data table rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_ListaAnosAlbaranes = '{97E74705-E58C-4C35-8BD8-4FB92B071A41}'; - RID_AlbaranesCliente = '{C7D38181-D27A-4E22-8F3C-A75AC30C5415}'; - RID_AlbaranesCliente_Detalles = '{CD08D967-9833-4D28-85E1-44C419A73C09}'; + RID_ListaAnosAlbaranes = '{03DAEDC7-C84E-4A87-A22E-9DAD97D43FCF}'; + RID_AlbaranesCliente = '{EE2C2D99-4B20-4384-BADD-AD7D67C97868}'; + RID_AlbaranesCliente_Detalles = '{67AC6DA8-13FF-41B0-B4ED-91A0414CFA2D}'; { Data table names } nme_ListaAnosAlbaranes = 'ListaAnosAlbaranes'; @@ -74,6 +74,7 @@ const fld_AlbaranesClienteNUM_COPIAS = 'NUM_COPIAS'; fld_AlbaranesClienteNUM_CORREOS = 'NUM_CORREOS'; fld_AlbaranesClienteBLOQUEADO = 'BLOQUEADO'; + fld_AlbaranesClientePAIS = 'PAIS'; { AlbaranesCliente field indexes } idx_AlbaranesClienteID = 0; @@ -125,6 +126,7 @@ const idx_AlbaranesClienteNUM_COPIAS = 46; idx_AlbaranesClienteNUM_CORREOS = 47; idx_AlbaranesClienteBLOQUEADO = 48; + idx_AlbaranesClientePAIS = 49; { AlbaranesCliente_Detalles fields } fld_AlbaranesCliente_DetallesID = 'ID'; @@ -165,7 +167,7 @@ const type { IListaAnosAlbaranes } IListaAnosAlbaranes = interface(IDAStronglyTypedDataTable) - ['{7BF69765-6C17-4529-8B77-AE37159DABE2}'] + ['{8E4D7304-1E61-4D01-B63C-88061AE62045}'] { Property getters and setters } function GetANOValue: String; procedure SetANOValue(const aValue: String); @@ -200,7 +202,7 @@ type { IAlbaranesCliente } IAlbaranesCliente = interface(IDAStronglyTypedDataTable) - ['{BD3E70CF-6C9E-4DEF-B2C5-111B4354674D}'] + ['{BAF2587E-A293-4C76-9392-32A6DC8D09E9}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -396,6 +398,10 @@ type procedure SetBLOQUEADOValue(const aValue: SmallInt); function GetBLOQUEADOIsNull: Boolean; procedure SetBLOQUEADOIsNull(const aValue: Boolean); + function GetPAISValue: String; + procedure SetPAISValue(const aValue: String); + function GetPAISIsNull: Boolean; + procedure SetPAISIsNull(const aValue: Boolean); { Properties } @@ -497,6 +503,8 @@ type property NUM_CORREOSIsNull: Boolean read GetNUM_CORREOSIsNull write SetNUM_CORREOSIsNull; property BLOQUEADO: SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; property BLOQUEADOIsNull: Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property PAIS: String read GetPAISValue write SetPAISValue; + property PAISIsNull: Boolean read GetPAISIsNull write SetPAISIsNull; end; { TAlbaranesClienteDataTableRules } @@ -702,6 +710,10 @@ type procedure SetBLOQUEADOValue(const aValue: SmallInt); virtual; function GetBLOQUEADOIsNull: Boolean; virtual; procedure SetBLOQUEADOIsNull(const aValue: Boolean); virtual; + function GetPAISValue: String; virtual; + procedure SetPAISValue(const aValue: String); virtual; + function GetPAISIsNull: Boolean; virtual; + procedure SetPAISIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; @@ -802,6 +814,8 @@ type property NUM_CORREOSIsNull: Boolean read GetNUM_CORREOSIsNull write SetNUM_CORREOSIsNull; property BLOQUEADO: SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; property BLOQUEADOIsNull: Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property PAIS: String read GetPAISValue write SetPAISValue; + property PAISIsNull: Boolean read GetPAISIsNull write SetPAISIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -811,7 +825,7 @@ type { IAlbaranesCliente_Detalles } IAlbaranesCliente_Detalles = interface(IDAStronglyTypedDataTable) - ['{C04F5C39-EDA5-480C-8A9D-AE3C282D097D}'] + ['{FD39F0DD-9D93-41C2-A10E-AE78DDB72EA0}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -2113,6 +2127,27 @@ begin DataTable.Fields[idx_AlbaranesClienteBLOQUEADO].AsVariant := Null; end; +function TAlbaranesClienteDataTableRules.GetPAISValue: String; +begin + result := DataTable.Fields[idx_AlbaranesClientePAIS].AsString; +end; + +procedure TAlbaranesClienteDataTableRules.SetPAISValue(const aValue: String); +begin + DataTable.Fields[idx_AlbaranesClientePAIS].AsString := aValue; +end; + +function TAlbaranesClienteDataTableRules.GetPAISIsNull: boolean; +begin + result := DataTable.Fields[idx_AlbaranesClientePAIS].IsNull; +end; + +procedure TAlbaranesClienteDataTableRules.SetPAISIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_AlbaranesClientePAIS].AsVariant := Null; +end; + { TAlbaranesCliente_DetallesDataTableRules } constructor TAlbaranesCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable); diff --git a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas index 0b362d7..0356770 100644 --- a/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas +++ b/Source/Modulos/Albaranes de cliente/Model/schAlbaranesClienteServer_Intf.pas @@ -9,14 +9,14 @@ const { Delta rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_ListaAnosAlbaranesDelta = '{9E9C7882-2EDF-423A-8B9F-22368EA2C950}'; - RID_AlbaranesClienteDelta = '{C0D2EB08-F338-466A-BF04-1A86B1F4DB68}'; - RID_AlbaranesCliente_DetallesDelta = '{A979524D-4C7B-4853-9AE2-EF0FEB0F920B}'; + RID_ListaAnosAlbaranesDelta = '{716CDFC8-9A78-48CE-A9EA-9D18F891CB8E}'; + RID_AlbaranesClienteDelta = '{C2C37F78-792A-4EB7-A9DA-2C2095DFDB6F}'; + RID_AlbaranesCliente_DetallesDelta = '{F4ADE8A0-DE1F-41FF-96C0-F9E986830529}'; type { IListaAnosAlbaranesDelta } IListaAnosAlbaranesDelta = interface(IListaAnosAlbaranes) - ['{9E9C7882-2EDF-423A-8B9F-22368EA2C950}'] + ['{716CDFC8-9A78-48CE-A9EA-9D18F891CB8E}'] { Property getters and setters } function GetOldANOValue : String; @@ -50,7 +50,7 @@ type { IAlbaranesClienteDelta } IAlbaranesClienteDelta = interface(IAlbaranesCliente) - ['{C0D2EB08-F338-466A-BF04-1A86B1F4DB68}'] + ['{C2C37F78-792A-4EB7-A9DA-2C2095DFDB6F}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_EMPRESAValue : Integer; @@ -101,6 +101,7 @@ type function GetOldNUM_COPIASValue : SmallInt; function GetOldNUM_CORREOSValue : SmallInt; function GetOldBLOQUEADOValue : SmallInt; + function GetOldPAISValue : String; { Properties } property OldID : Integer read GetOldIDValue; @@ -152,6 +153,7 @@ type property OldNUM_COPIAS : SmallInt read GetOldNUM_COPIASValue; property OldNUM_CORREOS : SmallInt read GetOldNUM_CORREOSValue; property OldBLOQUEADO : SmallInt read GetOldBLOQUEADOValue; + property OldPAIS : String read GetOldPAISValue; end; { TAlbaranesClienteBusinessProcessorRules } @@ -455,6 +457,12 @@ type function GetOldBLOQUEADOIsNull: Boolean; virtual; procedure SetBLOQUEADOValue(const aValue: SmallInt); virtual; procedure SetBLOQUEADOIsNull(const aValue: Boolean); virtual; + function GetPAISValue: String; virtual; + function GetPAISIsNull: Boolean; virtual; + function GetOldPAISValue: String; virtual; + function GetOldPAISIsNull: Boolean; virtual; + procedure SetPAISValue(const aValue: String); virtual; + procedure SetPAISIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; @@ -653,6 +661,10 @@ type property BLOQUEADOIsNull : Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; property OldBLOQUEADO : SmallInt read GetOldBLOQUEADOValue; property OldBLOQUEADOIsNull : Boolean read GetOldBLOQUEADOIsNull; + property PAIS : String read GetPAISValue write SetPAISValue; + property PAISIsNull : Boolean read GetPAISIsNull write SetPAISIsNull; + property OldPAIS : String read GetOldPAISValue; + property OldPAISIsNull : Boolean read GetOldPAISIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -662,7 +674,7 @@ type { IAlbaranesCliente_DetallesDelta } IAlbaranesCliente_DetallesDelta = interface(IAlbaranesCliente_Detalles) - ['{A979524D-4C7B-4853-9AE2-EF0FEB0F920B}'] + ['{F4ADE8A0-DE1F-41FF-96C0-F9E986830529}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_ALBARANValue : Integer; @@ -2466,6 +2478,37 @@ begin BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteBLOQUEADO] := Null; end; +function TAlbaranesClienteBusinessProcessorRules.GetPAISValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClientePAIS]; +end; + +function TAlbaranesClienteBusinessProcessorRules.GetPAISIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClientePAIS]); +end; + +function TAlbaranesClienteBusinessProcessorRules.GetOldPAISValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesClientePAIS]; +end; + +function TAlbaranesClienteBusinessProcessorRules.GetOldPAISIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesClientePAIS]); +end; + +procedure TAlbaranesClienteBusinessProcessorRules.SetPAISValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClientePAIS] := aValue; +end; + +procedure TAlbaranesClienteBusinessProcessorRules.SetPAISIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClientePAIS] := Null; +end; + { TAlbaranesCliente_DetallesBusinessProcessorRules } constructor TAlbaranesCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm index 18ed7c6..43e633a 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm @@ -746,11 +746,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente 'SAS.PROVINCIA AS PROVINCIA_EMPRESA,'#10' EMPRESAS.TELEFONO_1 AS TEL' + 'EFONO_1_EMPRESA,'#10' EMPRESAS.FAX AS FAX_EMPRESA,'#10' EMPRESAS.MOVIL' + '_1 AS MOVIL_1_EMPRESA,'#10' EMPRESAS.EMAIL_1 AS EMAIL_1_EMPRESA,'#10' ' + - 'EMPRESAS.PAGINA_WEB AS PAGINA_WEB_EMPRESA'#10'FROM'#10' V_ALBARANES_C' + - 'LIENTE'#10' LEFT OUTER JOIN V_CLIENTES ON (V_CLIENTES.ID = V_ALBARA' + - 'NES_CLIENTE.ID_CLIENTE)'#10' LEFT OUTER JOIN EMPRESAS ON (EMPRESAS.' + - 'ID = V_ALBARANES_CLIENTE.ID_EMPRESA)'#10'WHERE V_ALBARANES_CLIENTE.I' + - 'D = :ID'#10 + 'EMPRESAS.PAGINA_WEB AS PAGINA_WEB_EMPRESA,'#10' V_CLIENTES.IDIOMA_I' + + 'SO,'#10' V_ALBARANES_CLIENTE.PAIS'#10'FROM'#10' V_ALBARANES_CLIENTE'#10' LE' + + 'FT OUTER JOIN V_CLIENTES ON (V_CLIENTES.ID = V_ALBARANES_CLIENTE' + + '.ID_CLIENTE)'#10' LEFT OUTER JOIN EMPRESAS ON (EMPRESAS.ID = V_ALBA' + + 'RANES_CLIENTE.ID_EMPRESA)'#10'WHERE V_ALBARANES_CLIENTE.ID = :ID'#10 StatementType = stSQL ColumnMappings = < item @@ -880,6 +880,14 @@ object RptAlbaranesCliente: TRptAlbaranesCliente item DatasetField = 'PAGINA_WEB_EMPRESA' TableField = 'PAGINA_WEB_EMPRESA' + end + item + DatasetField = 'IDIOMA_ISO' + TableField = 'IDIOMA_ISO' + end + item + DatasetField = 'PAIS' + TableField = 'PAIS' end> end> Name = 'Informe_Cabecera' @@ -1034,6 +1042,16 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Name = 'PAGINA_WEB_EMPRESA' DataType = datString Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 + end + item + Name = 'PAIS' + DataType = datString + Size = 255 end> end item @@ -2635,15 +2653,169 @@ object RptAlbaranesCliente: TRptAlbaranesCliente object frxReport: TfrxReport Version = '4.7.71' DotMatrixReport = False + EngineOptions.DoublePass = True IniFile = '\Software\Fast Reports' PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator, pbExportQuick] PreviewOptions.Zoom = 1.000000000000000000 PrintOptions.Printer = 'Por defecto' PrintOptions.PrintOnSheet = 0 - ReportOptions.CreateDate = 41478.551891354170000000 - ReportOptions.LastChange = 41478.553933067130000000 + ReportOptions.CreateDate = 39065.872423495400000000 + ReportOptions.LastChange = 41807.752059861110000000 ScriptLanguage = 'PascalScript' ScriptText.Strings = ( + 'var' + ' Pagina: Variant;' + '' + '' + 'procedure DireccionEnvioOnBeforePrint(Sender: TfrxComponent);' + 'var' + ' ACadena : String;' + 'begin' + ' ACadena := '#39#39';' + ' DireccionEnvio.Lines.Clear;' + '' + ' ACadena := '#39#39';' + '' + ' DireccionEnvio.Lines.Add();' + ' if ( <> '#39#39') then' + ' ACadena := + '#39' '#39';' + ' if ( <> '#39#39') then' + ' ACadena := ACadena + ;' + '' + ' if (ACadena <> '#39#39') then' + ' DireccionEnvio.Lines.Add(ACadena);' + '' + + ' ACadena := '#39#39'; ' + + ' ' + ' if ( <> '#39#39') then' + ' ACadena := ;' + '' + ' if ( <> '#39#39') then' + ' ACadena := ACadena + '#39' - '#39' + ;' + ' ' + ' DireccionEnvio.Lines.Add(ACadena); ' + 'end;' + '' + 'procedure Memo2OnBeforePrint(Sender: TfrxComponent);' + 'begin' + ' Memo2.Lines.Clear;' + ' if (StrToFloat() < 0) then' + ' Memo2.Lines.Add('#39'RETURN ORDER'#39')' + ' else' + ' Memo2.Lines.Add('#39'DELIVERY NOTE'#39')' + 'end;' + '' + 'procedure Memo5OnBeforePrint(Sender: TfrxComponent);' + 'begin' + ' if (StrToFloat() < 0) then' + ' begin' + ' Memo5.Lines.Clear;' + ' Memo5.Lines.Add('#39'Order number:'#39');' + ' end;' + 'end;' + '' + 'procedure Memo9OnBeforePrint(Sender: TfrxComponent);' + 'begin' + ' if (StrToFloat() < 0) then' + ' begin' + ' Memo9.Lines.Clear;' + ' Memo9.Lines.Add('#39'Date order:'#39');' + ' end;' + 'end;' + '' + 'procedure PageHeader1OnBeforePrint(Sender: TfrxComponent);' + 'begin' + ' if not Engine.FinalPass then' + ' Set('#39'TotalPaginas'#39', ( + 1));' + '' + ' if Engine.FinalPass then' + ' Set('#39'Pagina'#39', ( + 1));' + 'end;' + '' + 'procedure frxReportOnStartReport(Sender: TfrxComponent);' + 'begin' + ' Set('#39'Pagina'#39', 0);' + ' Set('#39'TotalPaginas'#39', 0);' + 'end;' + '' + 'procedure Memo26OnBeforePrint(Sender: TfrxComponent);' + 'begin' + + ' if and ( <> ' + + #39#39') then' + + ' Memo26.Visible := True ' + + ' ' + ' else' + ' Memo26.Visible := False ' + 'end;' + '' + 'procedure Memo27OnBeforePrint(Sender: TfrxComponent);' + 'begin' + + ' if and ( <> '#39#39') ' + + 'then' + + ' Memo27.Visible := True ' + + ' ' + ' else' + ' Memo27.Visible := False ' + 'end;' + '' + 'procedure eImporteUnidadOnBeforePrint(Sender: TfrxComponent);' + 'begin' + ' if then' + ' begin ' + ' eImporteUnidad.Visible := True; ' + ' lImporteUnidad.Visible := True;' + ' eDescuento.Visible := True;' + + ' lDescuento.Visible := True; ' + + ' ' + ' eImporteTotal.Visible := True; ' + ' lImporteTotal.Visible := True; ' + ' ImporteUnidad.Visible := True;' + + ' Descuento.Visible := True; ' + + ' ' + ' ImporteTotal.Visible := True; ' + ' end' + ' else' + ' begin ' + ' eImporteUnidad.Visible := False; ' + ' lImporteUnidad.Visible := False; ' + ' eImporteTotal.Visible := False; ' + ' lImporteTotal.Visible := False;' + ' eDescuento.Visible := False;' + + ' lDescuento.Visible := False; ' + + ' ' + ' ImporteUnidad.Visible := False; ' + ' ImporteTotal.Visible := False;' + + ' Descuento.Visible := False; ' + + ' ' + + ' eConcepto.Width := eConcepto.Width + ImporteTotal.Width + e' + + 'Descuento.Width + ImporteUnidad.Width + 10;' + ' Concepto.Width := eConcepto.Width - 10; ' + ' end ' + 'end;' + '' + 'procedure Overlay1OnBeforePrint(Sender: TfrxComponent);' + 'begin' + ' if then' + ' begin' + + ' Overlay1.Visible := True; ' + + ' ' + ' end' + ' else' + ' begin ' + ' Overlay1.Visible := False; ' + ' end ' + 'end;' '' 'begin' '' @@ -2651,6 +2823,7 @@ object RptAlbaranesCliente: TRptAlbaranesCliente ShowProgress = False StoreInDFM = False OnGetValue = frxReportGetValue + OnStartReport = 'frxReportOnStartReport' Left = 145 Top = 16 end @@ -3032,6 +3205,16 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Name = 'PAGINA_WEB_EMPRESA' DataType = datString Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 + end + item + Name = 'PAIS' + DataType = datString + Size = 255 end> Params = < item diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas index e77a903..ece8968 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas @@ -246,7 +246,7 @@ begin tbl_Cabecera.Active := True; tbl_Detalles.Active := True; - AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString); if VarIsNull(AInforme) then raise Exception.Create (('Error Servidor: _GenerarFactura, no encuentra informe ' + rptInforme)); diff --git a/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm b/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm index e216d6c..9c6206b 100644 --- a/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm +++ b/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm @@ -243,6 +243,10 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente item DatasetField = 'BLOQUEADO' TableField = 'BLOQUEADO' + end + item + DatasetField = 'PAIS' + TableField = 'PAIS' end> end> Name = 'AlbaranesCliente' @@ -510,6 +514,11 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente item Name = 'BLOQUEADO' DataType = datSmallInt + end + item + Name = 'PAIS' + DataType = datString + Size = 255 end> end item @@ -870,6 +879,12 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente Name = 'ID_ALBARAN_DEV' DataType = datInteger Value = '' + end + item + Name = 'PAIS' + DataType = datString + Size = 255 + Value = '' end> Statements = < item @@ -885,16 +900,16 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente 'ASE_IMPONIBLE, IVA, IMPORTE_IVA, IMPORTE_TOTAL, OBSERVACIONES, '#10 + ' INCIDENCIAS, INCIDENCIAS_ACTIVAS, FECHA_ALTA, FECHA_MODIFIC' + 'ACION, '#10' USUARIO, ID_FORMA_PAGO, FECHA_PREVISTA_ENVIO, FECHA' + - '_ENVIO, '#10' FECHA_RECEPCION, ID_ALBARAN_DEV)'#10' VALUES'#10' (:ID' + - ', :ID_EMPRESA, :ID_CLIENTE, :FECHA_ALBARAN, :TIPO, :REFERENCIA,'#10 + - ' :REFERENCIA_CLIENTE, :ID_ALMACEN, :ID_PEDIDO, :ID_FACTURA, ' + - ':ID_DIRECCION,'#10' :CALLE, :CODIGO_POSTAL, :POBLACION, :PROVINC' + - 'IA, :PERSONA_CONTACTO,'#10' :TELEFONO, :IMPORTE_NETO, :IMPORTE_P' + - 'ORTE, :DESCUENTO, :IMPORTE_DESCUENTO,'#10' :BASE_IMPONIBLE, :IVA' + - ', :IMPORTE_IVA, :IMPORTE_TOTAL, :OBSERVACIONES,'#10' :INCIDENCIA' + - 'S, :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP,'#10' ' + - ' :USUARIO, :ID_FORMA_PAGO, :FECHA_PREVISTA_ENVIO, :FECHA_ENVI' + - 'O,'#10' :FECHA_RECEPCION, :ID_ALBARAN_DEV)'#10#10 + '_ENVIO, '#10' FECHA_RECEPCION, ID_ALBARAN_DEV, PAIS)'#10' VALUES'#10' ' + + ' (:ID, :ID_EMPRESA, :ID_CLIENTE, :FECHA_ALBARAN, :TIPO, :REFERE' + + 'NCIA,'#10' :REFERENCIA_CLIENTE, :ID_ALMACEN, :ID_PEDIDO, :ID_FAC' + + 'TURA, :ID_DIRECCION,'#10' :CALLE, :CODIGO_POSTAL, :POBLACION, :P' + + 'ROVINCIA, :PERSONA_CONTACTO,'#10' :TELEFONO, :IMPORTE_NETO, :IMP' + + 'ORTE_PORTE, :DESCUENTO, :IMPORTE_DESCUENTO,'#10' :BASE_IMPONIBLE' + + ', :IVA, :IMPORTE_IVA, :IMPORTE_TOTAL, :OBSERVACIONES,'#10' :INCI' + + 'DENCIAS, :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTAMP, CURRENT_TIMEST' + + 'AMP,'#10' :USUARIO, :ID_FORMA_PAGO, :FECHA_PREVISTA_ENVIO, :FECH' + + 'A_ENVIO,'#10' :FECHA_RECEPCION, :ID_ALBARAN_DEV, :PAIS)'#10#10 StatementType = stSQL ColumnMappings = <> end> @@ -1094,6 +1109,12 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente DataType = datInteger Value = '' end + item + Name = 'PAIS' + DataType = datString + Size = 255 + Value = '' + end item Name = 'OLD_ID' Value = '' @@ -1122,8 +1143,8 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente 'STAMP,'#10' USUARIO = :USUARIO, '#10' ID_FORMA_PAGO = :ID_FORMA_PA' + 'GO, '#10' FECHA_PREVISTA_ENVIO = :FECHA_PREVISTA_ENVIO, '#10' FECH' + 'A_ENVIO = :FECHA_ENVIO, '#10' FECHA_RECEPCION = :FECHA_RECEPCION,' + - #10' ID_ALBARAN_DEV = :ID_ALBARAN_DEV'#10' WHERE'#10' (ID = :OLD_ID)' + - #10 + #10' ID_ALBARAN_DEV = :ID_ALBARAN_DEV,'#10' PAIS = :PAIS'#10' WHERE'#10 + + ' (ID = :OLD_ID)'#10 StatementType = stSQL ColumnMappings = <> end> diff --git a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranCliente.dfm b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranCliente.dfm index facc0d6..090582c 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranCliente.dfm +++ b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranCliente.dfm @@ -198,9 +198,9 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente ExplicitHeight = 378 inherited ToolBar1: TToolBar Width = 751 - Height = 51 + Height = 78 ExplicitWidth = 751 - ExplicitHeight = 51 + ExplicitHeight = 78 inherited ToolButton3: TToolButton Wrap = False end @@ -223,83 +223,84 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente ExplicitLeft = 399 ExplicitTop = 0 end - inherited FontSize: TEdit + inherited ToolButton13: TToolButton [6] Left = 544 Top = 0 - Width = 186 + Wrap = True ExplicitLeft = 544 ExplicitTop = 0 - ExplicitWidth = 186 end - inherited UpDown1: TUpDown - Left = 730 + inherited ToolButton6: TToolButton [7] + Left = 552 Top = 0 - ExplicitLeft = 730 + ExplicitLeft = 552 ExplicitTop = 0 end - inherited ToolButton13: TToolButton + inherited ToolButton7: TToolButton [8] Left = 0 - Top = 0 + Top = 22 + ExplicitLeft = 0 + ExplicitTop = 22 + end + inherited ToolButton8: TToolButton [9] + Left = 0 + Enabled = True Wrap = True ExplicitLeft = 0 - ExplicitTop = 0 + end + inherited ToolButton12: TToolButton [10] + Left = 0 + Top = 66 + Wrap = True + ExplicitLeft = 0 + ExplicitTop = 66 ExplicitHeight = 27 end - inherited ToolButton6: TToolButton + inherited UpDown1: TUpDown [11] Left = 0 - Top = 27 + Top = 93 ExplicitLeft = 0 - ExplicitTop = 27 + ExplicitTop = 93 end - inherited ToolButton7: TToolButton - Left = 66 - Top = 27 - ExplicitLeft = 66 - ExplicitTop = 27 - end - inherited ToolButton8: TToolButton - Left = 133 - Top = 27 - ExplicitLeft = 133 - ExplicitTop = 27 - end - inherited ToolButton12: TToolButton - Left = 216 - Top = 27 - ExplicitLeft = 216 - ExplicitTop = 27 + inherited FontSize: TEdit [12] + Left = 17 + Top = 93 + Width = 186 + ExplicitLeft = 17 + ExplicitTop = 93 + ExplicitWidth = 186 end inherited ToolButton9: TToolButton - Left = 224 - Top = 27 - ExplicitLeft = 224 - ExplicitTop = 27 + Left = 203 + Top = 93 + ExplicitLeft = 203 + ExplicitTop = 93 end inherited ToolButton10: TToolButton - Left = 369 - Top = 27 - ExplicitLeft = 369 - ExplicitTop = 27 + Left = 348 + Top = 93 + ExplicitLeft = 348 + ExplicitTop = 93 end inherited ToolButton11: TToolButton - Left = 494 - Top = 27 - ExplicitLeft = 494 - ExplicitTop = 27 + Left = 473 + Top = 93 + ExplicitLeft = 473 + ExplicitTop = 93 end end inherited cxGrid: TcxGrid - Top = 77 + Top = 104 Width = 751 - Height = 301 - ExplicitTop = 77 + Height = 274 + ExplicitTop = 104 ExplicitWidth = 751 - ExplicitHeight = 301 + ExplicitHeight = 274 end inherited TBXDock1: TTBXDock - Top = 51 + Top = 78 Width = 751 - ExplicitTop = 51 + ExplicitTop = 78 ExplicitWidth = 751 inherited TBXToolbar1: TTBXToolbar ExplicitWidth = 566 @@ -392,52 +393,52 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente ExplicitHeight = 78 inherited Bevel3: TBevel Left = 428 - Top = -129 + Top = 11 Width = 7 Height = 54 ExplicitLeft = 428 - ExplicitTop = -129 + ExplicitTop = 11 ExplicitWidth = 7 ExplicitHeight = 54 end inherited Bevel4: TBevel Left = 544 - Top = -87 + Top = 53 Width = 192 ExplicitLeft = 544 - ExplicitTop = -87 + ExplicitTop = 53 ExplicitWidth = 192 end inherited Bevel1: TBevel Left = 544 - Top = 29 + Top = 169 Width = 73 ExplicitLeft = 544 - ExplicitTop = 29 + ExplicitTop = 169 ExplicitWidth = 73 end inherited Bevel2: TBevel Left = 120 - Top = 31 + Top = 171 Width = 368 ExplicitLeft = 120 - ExplicitTop = 31 + ExplicitTop = 171 ExplicitWidth = 368 end inherited ImporteDto: TcxDBCurrencyEdit Left = 191 - Top = -102 + Top = 38 Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 191 - ExplicitTop = -102 + ExplicitTop = 38 end inherited ImporteIVA: TcxDBCurrencyEdit Left = 615 - Top = -52 + Top = 88 DataBinding.DataField = '' Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True @@ -445,37 +446,37 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 615 - ExplicitTop = -52 + ExplicitTop = 88 ExplicitWidth = 182 Width = 182 end inherited ImporteTotal: TcxDBCurrencyEdit Left = 545 - Top = 2 + Top = 142 Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 545 - ExplicitTop = 2 + ExplicitTop = 142 ExplicitWidth = 252 Width = 252 end inherited edtDescuento: TcxDBSpinEdit Left = 120 - Top = -102 + Top = 38 Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 120 - ExplicitTop = -102 + ExplicitTop = 38 end inherited edtIVA: TcxDBSpinEdit Left = 544 - Top = -52 + Top = 88 DataBinding.DataField = '' Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True @@ -483,24 +484,24 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 544 - ExplicitTop = -52 + ExplicitTop = 88 end inherited ImporteBase: TcxDBCurrencyEdit Left = 544 - Top = -129 + Top = 11 Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 544 - ExplicitTop = -129 + ExplicitTop = 11 ExplicitWidth = 253 Width = 253 end inherited edtRE: TcxDBSpinEdit Left = 544 - Top = -25 + Top = 115 DataBinding.DataField = '' Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True @@ -508,11 +509,11 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 544 - ExplicitTop = -25 + ExplicitTop = 115 end inherited ImporteRE: TcxDBCurrencyEdit Left = 615 - Top = -25 + Top = 115 DataBinding.DataField = '' Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True @@ -520,13 +521,13 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 615 - ExplicitTop = -25 + ExplicitTop = 115 ExplicitWidth = 182 Width = 182 end inherited eImporteNeto: TcxDBCurrencyEdit Left = 120 - Top = -129 + Top = 11 Enabled = False Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True @@ -534,11 +535,11 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 120 - ExplicitTop = -129 + ExplicitTop = 11 end inherited ePorte: TcxDBCurrencyEdit Left = 120 - Top = -75 + Top = 65 Properties.OnValidate = frViewTotales1ePortePropertiesValidate Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True @@ -546,28 +547,28 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 120 - ExplicitTop = -75 + ExplicitTop = 65 end inherited eIVA: TcxDBLookupComboBox Left = 120 - Top = -48 + Top = 92 DataBinding.DataField = '' Style.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 120 - ExplicitTop = -48 + ExplicitTop = 92 end inherited bTiposIVA: TButton Left = 280 - Top = -48 + Top = 92 ExplicitLeft = 280 - ExplicitTop = -48 + ExplicitTop = 92 end inherited cbRecargoEquivalencia: TcxDBCheckBox Left = 120 - Top = -21 + Top = 119 DataBinding.DataField = '' DataBinding.DataSource = nil Style.LookAndFeel.SkinName = '' @@ -575,43 +576,43 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 120 - ExplicitTop = -21 + ExplicitTop = 119 ExplicitWidth = 221 Width = 221 end inherited edtRetencion: TcxDBSpinEdit Left = 544 - Top = 49 + Top = 189 Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 544 - ExplicitTop = 49 + ExplicitTop = 189 end inherited edtImporteRetencion: TcxDBCurrencyEdit Left = 615 - Top = 49 + Top = 189 Style.LookAndFeel.SkinName = '' Style.IsFontAssigned = True StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 615 - ExplicitTop = 49 + ExplicitTop = 189 ExplicitWidth = 180 Width = 180 end inherited edtFechaRetencion: TcxDBDateEdit Left = 120 - Top = 51 + Top = 191 Style.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 120 - ExplicitTop = 51 + ExplicitTop = 191 ExplicitWidth = 280 Width = 280 end diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm index fe89dc4..580cb68 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm +++ b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.dfm @@ -20,7 +20,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente 591) object Label1: TLabel Left = 22 - Top = 450 + Top = 477 Width = 299 Height = 26 Caption = @@ -76,7 +76,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.SkinName = '' - TabOrder = 21 + TabOrder = 22 Height = 69 Width = 403 end @@ -158,7 +158,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente end object ePersonaContacto: TcxDBTextEdit Left = 116 - Top = 305 + Top = 332 DataBinding.DataField = 'PERSONA_CONTACTO' DataBinding.DataSource = DADataSource Style.BorderColor = clWindowFrame @@ -177,12 +177,12 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.SkinName = '' - TabOrder = 12 + TabOrder = 13 Width = 336 end object eTlfTrabajo: TcxDBTextEdit Left = 116 - Top = 332 + Top = 359 DataBinding.DataField = 'TELEFONO' DataBinding.DataSource = DADataSource Style.BorderColor = clWindowFrame @@ -200,18 +200,18 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.SkinName = '' - TabOrder = 13 + TabOrder = 14 Width = 336 end object bElegirDireccion: TBitBtn Left = 278 - Top = 359 + Top = 386 Width = 172 Height = 23 Action = actElegirDireccion Caption = 'Elegir una direcci'#243'n de env'#237'o...' Enabled = False - TabOrder = 14 + TabOrder = 15 end object Button1: TButton Left = 318 @@ -317,21 +317,21 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.SkinName = '' - TabOrder = 20 + TabOrder = 21 Width = 265 end object cbConAlmacen: TCheckBox Left = 32 - Top = 418 + Top = 445 Width = 179 Height = 21 Caption = 'Asociar este albar'#225'n al almac'#233'n:' - TabOrder = 15 + TabOrder = 16 OnClick = cbConAlmacenClick end object cbAlmacen: TcxDBLookupComboBox Left = 217 - Top = 418 + Top = 445 DataBinding.DataField = 'ID_ALMACEN' DataBinding.DataSource = DADataSource Properties.KeyFieldNames = 'ID' @@ -360,7 +360,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.SkinName = '' - TabOrder = 16 + TabOrder = 17 Width = 235 end object eRefFacturaCli: TcxDBTextEdit @@ -421,7 +421,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.SkinName = '' - TabOrder = 18 + TabOrder = 19 Width = 265 end object eRefCliente: TcxDBTextEdit @@ -479,7 +479,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.SkinName = '' - TabOrder = 19 + TabOrder = 20 Width = 265 end object cbProvincia: TcxDBComboBox @@ -551,7 +551,7 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente Font.Name = 'Tahoma' Font.Style = [] ParentFont = False - TabOrder = 17 + TabOrder = 18 ReadOnly = False ExplicitLeft = 480 ExplicitTop = 28 @@ -647,6 +647,35 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente Top = 32 end end + object cbPais: TcxDBComboBox + Left = 116 + Top = 305 + DataBinding.DataField = 'PAIS' + DataBinding.DataSource = DADataSource + Properties.DropDownListStyle = lsEditFixedList + Properties.ImmediatePost = True + Properties.ImmediateUpdateText = True + Properties.PostPopupValueOnTab = True + Properties.OnInitPopup = cbPaisPropertiesInitPopup + Style.BorderColor = clWindowFrame + Style.BorderStyle = ebs3D + Style.LookAndFeel.Kind = lfStandard + Style.LookAndFeel.NativeStyle = True + Style.LookAndFeel.SkinName = '' + Style.ButtonStyle = bts3D + Style.PopupBorderStyle = epbsFrame3D + StyleDisabled.LookAndFeel.Kind = lfStandard + StyleDisabled.LookAndFeel.NativeStyle = True + StyleDisabled.LookAndFeel.SkinName = '' + StyleFocused.LookAndFeel.Kind = lfStandard + StyleFocused.LookAndFeel.NativeStyle = True + StyleFocused.LookAndFeel.SkinName = '' + StyleHot.LookAndFeel.Kind = lfStandard + StyleHot.LookAndFeel.NativeStyle = True + StyleHot.LookAndFeel.SkinName = '' + TabOrder = 12 + Width = 263 + end object dxLayoutControl1Group_Root: TdxLayoutGroup ShowCaption = False Hidden = True @@ -773,6 +802,11 @@ inherited frViewAlbaranCliente: TfrViewAlbaranCliente Control = cbPoblacion ControlOptions.ShowBorder = False end + object dxLayoutControl1Item17: TdxLayoutItem + Caption = 'Pa'#237's:' + Control = cbPais + ControlOptions.ShowBorder = False + end object dxLayoutControl1Item12: TdxLayoutItem Caption = 'Pers. de contacto:' Control = ePersonaContacto diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas index c21ba6a..519cf6d 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas +++ b/Source/Modulos/Albaranes de cliente/Views/uViewAlbaranCliente.pas @@ -103,6 +103,8 @@ type dxLayoutControl1Group9: TdxLayoutGroup; frViewDatosYSeleccionClienteAlbaran1: TfrViewDatosYSeleccionClienteAlbaran; dxLayoutControl1Item1: TdxLayoutItem; + dxLayoutControl1Item17: TdxLayoutItem; + cbPais: TcxDBComboBox; procedure CustomViewCreate(Sender: TObject); procedure CustomViewDestroy(Sender: TObject); procedure actElegirDireccionExecute(Sender: TObject); @@ -122,6 +124,7 @@ type procedure frViewClienteAlbaranactAnadirContactoUpdate(Sender: TObject); procedure cbProvinciaPropertiesInitPopup(Sender: TObject); procedure cbPoblacionPropertiesInitPopup(Sender: TObject); + procedure cbPaisPropertiesInitPopup(Sender: TObject); protected FController : IAlbaranesClienteController; @@ -133,12 +136,14 @@ type FViewClienteAlbaran : IViewDatosYSeleccionClienteAlbaran; FFormasPago : IBizFormaPago; FFormasPagoController : IFormasPagoController; + FPaises : TStringList; FProvincias : TStringList; FIDProvincia : Integer; //Almacenará la provincia que hay seleccionada para no cargar las poblaciones si no es necesario FPoblaciones : TStringList; procedure CargarProvincias; procedure CargarPoblaciones; + procedure CargarPaises; function GetAlbaran: IBizAlbaranCliente; procedure SetAlbaran(const Value: IBizAlbaranCliente); virtual; @@ -225,6 +230,30 @@ begin FFormasPagoController.VerTodos(FFormasPago); end; +procedure TfrViewAlbaranCliente.CargarPaises; +var + i : integer; +begin + with TProvinciasPoblacionesController.Create do + try + FPaises := DarListaPaises; + + with cbPais.Properties.Items do + begin + BeginUpdate; + try + Clear; + for i := 0 to FPaises.Count - 1 do + Add(FPaises.Names[i]); + finally + EndUpdate; + end; + end; + finally + Free; + end; +end; + procedure TfrViewAlbaranCliente.CargarPoblaciones; var i : integer; @@ -297,6 +326,17 @@ begin end; end; +procedure TfrViewAlbaranCliente.cbPaisPropertiesInitPopup(Sender: TObject); +begin + ShowHourglassCursor; + try + if not Assigned(FPaises) then + CargarPaises; + finally + HideHourglassCursor; + end; +end; + procedure TfrViewAlbaranCliente.cbPoblacionPropertiesInitPopup(Sender: TObject); begin inherited; diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm index 5e29e3f..086a134 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm +++ b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.dfm @@ -1,18 +1,19 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCliente Width = 337 - Height = 126 + Height = 163 ExplicitWidth = 337 - ExplicitHeight = 126 + ExplicitHeight = 163 object dxLayoutControl1: TdxLayoutControl Left = 0 Top = 0 Width = 337 - Height = 126 + Height = 163 Align = alClient ParentBackground = True TabOrder = 0 TabStop = False AutoContentSizes = [acsWidth, acsHeight] + ExplicitHeight = 126 object eCalle: TcxDBTextEdit Left = 64 Top = 10 @@ -53,7 +54,7 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl end object eTlfTrabajo: TcxDBTextEdit Left = 205 - Top = 91 + Top = 118 DataBinding.DataField = 'TELEFONO' DataBinding.DataSource = dsAlbaran Style.BorderColor = clWindowFrame @@ -67,12 +68,12 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl StyleFocused.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True - TabOrder = 5 + TabOrder = 6 Width = 122 end object ePersonaContacto: TcxDBTextEdit Left = 64 - Top = 91 + Top = 118 DataBinding.DataField = 'PERSONA_CONTACTO' DataBinding.DataSource = dsAlbaran Style.BorderColor = clWindowFrame @@ -87,7 +88,7 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl StyleFocused.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.NativeStyle = True - TabOrder = 4 + TabOrder = 5 Width = 84 end object cbProvincia: TcxDBComboBox @@ -140,6 +141,34 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl TabOrder = 3 Width = 263 end + object cbPais: TcxDBComboBox + Left = 64 + Top = 91 + DataBinding.DataField = 'PAIS' + Properties.DropDownListStyle = lsEditFixedList + Properties.ImmediatePost = True + Properties.ImmediateUpdateText = True + Properties.PostPopupValueOnTab = True + Properties.OnInitPopup = cbPaisPropertiesInitPopup + Style.BorderColor = clWindowFrame + Style.BorderStyle = ebs3D + Style.LookAndFeel.Kind = lfStandard + Style.LookAndFeel.NativeStyle = True + Style.LookAndFeel.SkinName = '' + Style.ButtonStyle = bts3D + Style.PopupBorderStyle = epbsFrame3D + StyleDisabled.LookAndFeel.Kind = lfStandard + StyleDisabled.LookAndFeel.NativeStyle = True + StyleDisabled.LookAndFeel.SkinName = '' + StyleFocused.LookAndFeel.Kind = lfStandard + StyleFocused.LookAndFeel.NativeStyle = True + StyleFocused.LookAndFeel.SkinName = '' + StyleHot.LookAndFeel.Kind = lfStandard + StyleHot.LookAndFeel.NativeStyle = True + StyleHot.LookAndFeel.SkinName = '' + TabOrder = 4 + Width = 256 + end object dxLayoutGroup1: TdxLayoutGroup ShowCaption = False Hidden = True @@ -182,6 +211,11 @@ inherited frViewDireccionEntregaAlbaranCliente: TfrViewDireccionEntregaAlbaranCl Control = cbPoblacion ControlOptions.ShowBorder = False end + object dxLayoutControl1Item7: TdxLayoutItem + Caption = 'Pa'#237's:' + Control = cbPais + ControlOptions.ShowBorder = False + end end object dxLayoutControl1Group4: TdxLayoutGroup ShowCaption = False diff --git a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas index 8246f11..8667d71 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas +++ b/Source/Modulos/Albaranes de cliente/Views/uViewDireccionEntregaAlbaranCliente.pas @@ -38,17 +38,22 @@ type dxLayoutControl1Item3: TdxLayoutItem; cbPoblacion: TcxDBComboBox; dxLayoutControl1Group2: TdxLayoutGroup; + dxLayoutControl1Item7: TdxLayoutItem; + cbPais: TcxDBComboBox; procedure cbListaPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); procedure cbProvinciaPropertiesInitPopup(Sender: TObject); procedure cbPoblacionPropertiesInitPopup(Sender: TObject); + procedure cbPaisPropertiesInitPopup(Sender: TObject); protected // FAlmacenesController : IAlmacenesController; // FAlmacenes: IBizAlmacen; FAlbaran : IBizAlbaranCliente; FController : IAlbaranesClienteController; + FPaises : TStringList; FProvincias : TStringList; FIDProvincia : Integer; //Almacenará la provincia que hay seleccionada para no cargar las poblaciones si no es necesario FPoblaciones : TStringList; + procedure CargarPaises; procedure CargarProvincias; procedure CargarPoblaciones; function GetAlbaranCliente: IBizAlbaranCliente; @@ -69,6 +74,30 @@ uses uProvinciasPoblacionesController, uStringsUtils; +procedure TfrViewDireccionEntregaAlbaranCliente.CargarPaises; +var + i : integer; +begin + with TProvinciasPoblacionesController.Create do + try + FPaises := DarListaPaises; + + with cbPais.Properties.Items do + begin + BeginUpdate; + try + Clear; + for i := 0 to FPaises.Count - 1 do + Add(FPaises.Names[i]); + finally + EndUpdate; + end; + end; + finally + Free; + end; +end; + procedure TfrViewDireccionEntregaAlbaranCliente.CargarPoblaciones; var i : integer; @@ -140,6 +169,18 @@ begin end;} end; +procedure TfrViewDireccionEntregaAlbaranCliente.cbPaisPropertiesInitPopup( + Sender: TObject); +begin + ShowHourglassCursor; + try + if not Assigned(FPaises) then + CargarPaises; + finally + HideHourglassCursor; + end; +end; + procedure TfrViewDireccionEntregaAlbaranCliente.cbPoblacionPropertiesInitPopup( Sender: TObject); begin diff --git a/Source/Modulos/Contactos/Controller/uContactosController.pas b/Source/Modulos/Contactos/Controller/uContactosController.pas index 27b0d30..701dc39 100644 --- a/Source/Modulos/Contactos/Controller/uContactosController.pas +++ b/Source/Modulos/Contactos/Controller/uContactosController.pas @@ -6,13 +6,14 @@ interface uses Windows, Forms, Classes, Controls, Contnrs, SysUtils, uDADataTable, uBizContactos, uBizContactosDatosBancarios, uIDataModuleContactos, - uControllerBase, uBizContactosPersonal; + uControllerBase, uBizContactosPersonal, uBizIdiomas; type IContactosController = interface(IControllerBase) ['{43F9A4ED-6563-4F95-9A56-330CF9C66731}'] function Buscar(const ID: Integer): IBizContacto; function BuscarTodos: IBizContacto; + function BuscarIdiomas: IBizIdiomas; procedure Ver(AContacto : IBizContacto); procedure VerTodos(AContactos: IBizContacto); function Nuevo : IBizContacto; @@ -56,6 +57,7 @@ type // Se implementa en los controladores hijos function Buscar(const ID: Integer): IBizContacto; virtual; abstract; function BuscarTodos: IBizContacto; virtual; abstract; + function BuscarIdiomas: IBizIdiomas; function Nuevo : IBizContacto; virtual; abstract; procedure Ver(AContacto : IBizContacto); virtual; abstract; procedure VerTodos(AContactos: IBizContacto); virtual; abstract; @@ -105,6 +107,11 @@ begin end; end; +function TContactosController.BuscarIdiomas: IBizIdiomas; +begin + Result := (FDataModule as IDataModuleContactos).GetIdiomas; +end; + constructor TContactosController.Create; begin inherited; diff --git a/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas b/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas index 50652c6..14f4d84 100644 --- a/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas +++ b/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas @@ -79,6 +79,7 @@ begin POBLACION := AContacto.POBLACION; PROVINCIA := AContacto.PROVINCIA; CODIGO_POSTAL := AContacto.CODIGO_POSTAL; + PAIS := AContacto.PAIS; TELEFONO := AContacto.TELEFONO_1; FAX := AContacto.FAX; MOVIL := AContacto.MOVIL_1; diff --git a/Source/Modulos/Contactos/Data/uDataModuleAgentes.dfm b/Source/Modulos/Contactos/Data/uDataModuleAgentes.dfm index 8479a28..8052496 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleAgentes.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleAgentes.dfm @@ -86,6 +86,21 @@ inherited DataModuleAgentes: TDataModuleAgentes DisplayLabel = 'C'#243'digo postal' DictionaryEntry = 'Contactos_CODIGO_POSTAL' end + item + Name = 'PAIS' + DataType = datString + Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 + end + item + Name = 'IDIOMA' + DataType = datString + Size = 255 + end item Name = 'TELEFONO_1' DataType = datString diff --git a/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm b/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm index 23ab380..8a57f06 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm @@ -32,7 +32,7 @@ inherited DataModuleClientes: TDataModuleClientes Left = 184 Top = 288 end - object tbl_Clientes: TDAMemDataTable + object tbl_Clientes: TDAMemDataTable [13] RemoteUpdatesOptions = [] Fields = < item @@ -98,6 +98,21 @@ inherited DataModuleClientes: TDataModuleClientes DisplayLabel = 'C'#243'digo postal' DictionaryEntry = 'Contactos_CODIGO_POSTAL' end + item + Name = 'PAIS' + DataType = datString + Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 + end + item + Name = 'IDIOMA' + DataType = datString + Size = 255 + end item Name = 'TELEFONO_1' DataType = datString @@ -164,10 +179,14 @@ inherited DataModuleClientes: TDataModuleClientes item Name = 'FECHA_ALTA' DataType = datDateTime + DisplayLabel = 'Clientes_FECHA_ALTA' + DictionaryEntry = 'Clientes_FECHA_ALTA' end item Name = 'FECHA_MODIFICACION' DataType = datDateTime + DisplayLabel = 'Clientes_FECHA_MODIFICACION' + DictionaryEntry = 'Clientes_FECHA_MODIFICACION' end item Name = 'USUARIO' @@ -191,6 +210,7 @@ inherited DataModuleClientes: TDataModuleClientes item Name = 'ID_AGENTE' DataType = datInteger + DictionaryEntry = 'Clientes_ID_AGENTE' end item Name = 'GRUPO_CLIENTE' @@ -209,14 +229,20 @@ inherited DataModuleClientes: TDataModuleClientes item Name = 'VENCIMIENTO_FACTURAS_1' DataType = datSmallInt + DisplayLabel = 'Clientes_VENCIMIENTO_FACTURAS_1' + DictionaryEntry = 'Clientes_VENCIMIENTO_FACTURAS_1' end item Name = 'VENCIMIENTO_FACTURAS_2' DataType = datSmallInt + DisplayLabel = 'Clientes_VENCIMIENTO_FACTURAS_2' + DictionaryEntry = 'Clientes_VENCIMIENTO_FACTURAS_2' end item Name = 'VENCIMIENTO_FACTURAS_3' DataType = datSmallInt + DisplayLabel = 'Clientes_VENCIMIENTO_FACTURAS_3' + DictionaryEntry = 'Clientes_VENCIMIENTO_FACTURAS_3' end item Name = 'BLOQUEADO' @@ -228,15 +254,21 @@ inherited DataModuleClientes: TDataModuleClientes Name = 'AGENTE' DataType = datString Size = 255 + DisplayLabel = 'Clientes_AGENTE' + DictionaryEntry = 'Clientes_AGENTE' end item Name = 'RAPEL' DataType = datSmallInt + DisplayLabel = 'Clientes_RAPEL' + DictionaryEntry = 'Clientes_RAPEL' end item Name = 'EMAIL_ADMINISTRACION' DataType = datString Size = 255 + DisplayLabel = 'Clientes_EMAIL_ADMINISTRACION' + DictionaryEntry = 'Clientes_EMAIL_ADMINISTRACION' end item Name = 'REGIMEN_IVA' @@ -277,10 +309,14 @@ inherited DataModuleClientes: TDataModuleClientes Name = 'CODIGO_ASIGNADO' DataType = datString Size = 255 + DisplayLabel = 'Clientes_CODIGO_ASIGNADO' + DictionaryEntry = 'Clientes_CODIGO_ASIGNADO' end item Name = 'DESCUENTO' DataType = datFloat + DisplayLabel = 'Clientes_DESCUENTO' + DictionaryEntry = 'Clientes_DESCUENTO' end item Name = 'FELICITACION' @@ -292,14 +328,19 @@ inherited DataModuleClientes: TDataModuleClientes Name = 'TIPO_CLIENTE' DataType = datString Size = 255 + DisplayLabel = 'Clientes_TIPO_CLIENTE' + DictionaryEntry = 'Clientes_TIPO_CLIENTE' end item Name = 'SEPA' DataType = datSmallInt + DisplayLabel = 'Clientes_SEPA' + DictionaryEntry = 'Clientes_SEPA' end item Name = 'ID_CENTRAL' DataType = datInteger + DictionaryEntry = 'Clientes_ID_CENTRAL' end> Params = <> StreamingOptions = [soDisableEventsWhileStreaming] @@ -310,13 +351,13 @@ inherited DataModuleClientes: TDataModuleClientes Left = 296 Top = 168 end - object ds_Clientes: TDADataSource + object ds_Clientes: TDADataSource [14] DataSet = tbl_Clientes.Dataset DataTable = tbl_Clientes Left = 296 Top = 232 end - object tbl_ClientesDescuentos: TDAMemDataTable + object tbl_ClientesDescuentos: TDAMemDataTable [15] RemoteUpdatesOptions = [] Fields = < item @@ -365,13 +406,13 @@ inherited DataModuleClientes: TDataModuleClientes Left = 448 Top = 168 end - object ds_ClientesDescuentos: TDADataSource + object ds_ClientesDescuentos: TDADataSource [16] DataSet = tbl_ClientesDescuentos.Dataset DataTable = tbl_ClientesDescuentos Left = 448 Top = 224 end - object tbl_GruposCliente: TDAMemDataTable + object tbl_GruposCliente: TDAMemDataTable [17] RemoteUpdatesOptions = [] Fields = < item @@ -398,13 +439,13 @@ inherited DataModuleClientes: TDataModuleClientes Left = 552 Top = 168 end - object ds_GruposCliente: TDADataSource + object ds_GruposCliente: TDADataSource [18] DataSet = tbl_GruposCliente.Dataset DataTable = tbl_GruposCliente Left = 552 Top = 224 end - object tbl_ClientesDescuentosArticulos: TDAMemDataTable + object tbl_ClientesDescuentosArticulos: TDAMemDataTable [19] RemoteUpdatesOptions = [] Fields = < item @@ -479,13 +520,13 @@ inherited DataModuleClientes: TDataModuleClientes Left = 448 Top = 280 end - object ds_ClientesDescuentosArticulos: TDADataSource + object ds_ClientesDescuentosArticulos: TDADataSource [20] DataSet = tbl_ClientesDescuentosArticulos.Dataset DataTable = tbl_ClientesDescuentosArticulos Left = 448 Top = 336 end - object tbl_TiposCliente: TDAMemDataTable + object tbl_TiposCliente: TDAMemDataTable [21] RemoteUpdatesOptions = [] Fields = < item @@ -511,13 +552,13 @@ inherited DataModuleClientes: TDataModuleClientes Left = 560 Top = 80 end - object ds_TiposCliente: TDADataSource + object ds_TiposCliente: TDADataSource [22] DataSet = tbl_TiposCliente.Dataset DataTable = tbl_TiposCliente Left = 560 Top = 32 end - object tbl_ClientesSucursales: TDAMemDataTable + object tbl_ClientesSucursales: TDAMemDataTable [23] RemoteUpdatesOptions = [] Fields = < item @@ -822,7 +863,7 @@ inherited DataModuleClientes: TDataModuleClientes Left = 296 Top = 288 end - object dsClientesSucursales: TDADataSource + object dsClientesSucursales: TDADataSource [24] DataSet = tbl_ClientesSucursales.Dataset DataTable = tbl_ClientesSucursales Left = 296 diff --git a/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm b/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm index e0e253e..cca6e4e 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm @@ -88,6 +88,21 @@ inherited DataModuleContactos: TDataModuleContactos DisplayLabel = 'C'#243'digo postal' DictionaryEntry = 'Contactos_CODIGO_POSTAL' end + item + Name = 'PAIS' + DataType = datString + Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 + end + item + Name = 'IDIOMA' + DataType = datString + Size = 255 + end item Name = 'TELEFONO_1' DataType = datString @@ -302,6 +317,11 @@ inherited DataModuleContactos: TDataModuleContactos item Name = 'FECHA_MODIFICACION' DataType = datDateTime + end + item + Name = 'PAIS' + DataType = datString + Size = 255 end> Params = <> MasterMappingMode = mmWhere @@ -534,4 +554,39 @@ inherited DataModuleContactos: TDataModuleContactos Left = 352 Top = 144 end + object tbl_Idiomas: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datInteger + Required = True + InPrimaryKey = True + end + item + Name = 'ISO' + DataType = datString + Size = 2 + Required = True + end + item + Name = 'DESCRIPCION' + DataType = datString + Size = 255 + Required = True + end> + Params = <> + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Contactos + LogicalName = 'Idiomas' + IndexDefs = <> + Left = 40 + Top = 248 + end + object ds_Idiomas: TDADataSource + DataSet = tbl_Idiomas.Dataset + DataTable = tbl_Idiomas + Left = 40 + Top = 200 + end end diff --git a/Source/Modulos/Contactos/Data/uDataModuleContactos.pas b/Source/Modulos/Contactos/Data/uDataModuleContactos.pas index 501d41b..4da996e 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleContactos.pas +++ b/Source/Modulos/Contactos/Data/uDataModuleContactos.pas @@ -7,12 +7,12 @@ uses uDADataTable, uDABINAdapter, uDAScriptingProvider, uDACDSDataTable, uROWinInetHttpChannel, uRORemoteService, uROClient, uROBinMessage, - uBizContactos, uBizContactosDatosBancarios, + uBizContactos, uBizContactosDatosBancarios, uBizDireccionesContacto, uIDataModuleEtiquetasContactosReport, uIDataModuleContactos, uDADesigntimeCall, uROTypes, uRODynamicRequest, uDAInterfaces, uDADataStreamer, uDARemoteDataAdapter, uDABin2DataStreamer, uDAMemDataTable, uDataModuleBase, uBizContactosPersonal, - uIntegerListUtils; + uIntegerListUtils, uBizIdiomas; type TDataModuleContactos = class(TDataModuleBase, IDataModuleContactos, IDataModuleEtiquetasContactosReport) @@ -29,6 +29,8 @@ type ds_PersonalContacto: TDADataSource; tbl_ListaAnosObjetivosAlb: TDAMemDataTable; ds_ListaAnosObjetivosAlb: TDADataSource; + tbl_Idiomas: TDAMemDataTable; + ds_Idiomas: TDADataSource; procedure DAClientDataModuleCreate(Sender: TObject); procedure DataModuleDestroy(Sender: TObject); public @@ -36,7 +38,8 @@ type function _GetDirecciones: IBizDireccionesContacto; function _GetItems (IDCategoria : Integer): IBizContacto; virtual; function _GetPersonal: IBizContactoPersonal; - function NewDireccion : IBizDireccionesContacto; + function GetIdiomas : IBizIdiomas; + function NewDireccion : IBizDireccionesContacto; // Report function GetReport(const ListaID: TIntegerList): Binary; @@ -63,6 +66,20 @@ begin // end; +function TDataModuleContactos.GetIdiomas: IBizIdiomas; +var + AIdiomas : TDAMemDataTable; +begin + ShowHourglassCursor; + try + AIdiomas := CloneDataTable(tbl_Idiomas); + AIdiomas.BusinessRulesID := BIZ_CLIENT_IDIOMAS; + Result := (AIdiomas as IBizIdiomas); + finally + HideHourglassCursor; + end; +end; + function TDataModuleContactos.GetReport(const ListaID: TIntegerList): Binary; var AParam : TIntegerArray; diff --git a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm index 9e07e39..ad9b770 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm @@ -1,164 +1,6 @@ inherited DataModuleEmpleados: TDataModuleEmpleados Height = 302 Width = 543 - inherited tbl_Contactos: TDAMemDataTable - Fields = < - item - Name = 'ID' - DataType = datAutoInc - GeneratorName = 'GEN_CONTACTOS_ID' - ServerAutoRefresh = True - DictionaryEntry = 'Contactos_ID' - InPrimaryKey = True - end - item - Name = 'ID_CATEGORIA' - DataType = datInteger - end - item - Name = 'NIF_CIF' - DataType = datString - Size = 15 - DisplayLabel = 'NIF/CIF' - DictionaryEntry = 'Contactos_NIF_CIF' - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - Required = True - DisplayLabel = 'Nombre' - DictionaryEntry = 'Contactos_NOMBRE' - end - item - Name = 'PERSONA_CONTACTO' - DataType = datString - Size = 255 - DisplayLabel = 'Persona de contacto' - DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - DisplayLabel = 'Direcci'#243'n' - DictionaryEntry = 'Contactos_CALLE' - end - item - Name = 'POBLACION' - DataType = datString - Size = 255 - DisplayLabel = 'Poblaci'#243'n' - DictionaryEntry = 'Contactos_POBLACION' - end - item - Name = 'PROVINCIA' - DataType = datString - Size = 255 - DisplayLabel = 'Provincia' - DictionaryEntry = 'Contactos_PROVINCIA' - end - item - Name = 'CODIGO_POSTAL' - DataType = datString - Size = 10 - DisplayLabel = 'C'#243'digo postal' - DictionaryEntry = 'Contactos_CODIGO_POSTAL' - end - item - Name = 'TELEFONO_1' - DataType = datString - Size = 25 - DisplayLabel = 'Tlf. trabajo' - DictionaryEntry = 'Contactos_TELEFONO_1' - end - item - Name = 'TELEFONO_2' - DataType = datString - Size = 25 - DisplayLabel = 'Tlf. particular' - DictionaryEntry = 'Contactos_TELEFONO_2' - end - item - Name = 'MOVIL_1' - DataType = datString - Size = 25 - DisplayLabel = 'M'#243'vil' - DictionaryEntry = 'Contactos_MOVIL_1' - end - item - Name = 'MOVIL_2' - DataType = datString - Size = 25 - DictionaryEntry = 'Contactos_MOVIL_2' - end - item - Name = 'FAX' - DataType = datString - Size = 25 - DisplayLabel = 'Fax' - DictionaryEntry = 'Contactos_FAX' - end - item - Name = 'EMAIL_1' - DataType = datString - Size = 255 - DisplayLabel = 'E-mail trabajo' - DictionaryEntry = 'Contactos_EMAIL_1' - end - item - Name = 'EMAIL_2' - DataType = datString - Size = 255 - DisplayLabel = 'E-mail particular' - DictionaryEntry = 'Contactos_EMAIL_2' - end - item - Name = 'PAGINA_WEB' - DataType = datString - Size = 255 - DisplayLabel = 'Web' - DictionaryEntry = 'Contactos_PAGINA_WEB' - end - item - Name = 'NOTAS' - DataType = datMemo - BlobType = dabtMemo - DisplayLabel = 'Observaciones' - DictionaryEntry = 'Contactos_NOTAS' - end - item - Name = 'FECHA_ALTA' - DataType = datDateTime - DisplayLabel = 'Fecha de alta' - DictionaryEntry = 'Contactos_FECHA_ALTA' - end - item - Name = 'FECHA_MODIFICACION' - DataType = datDateTime - DisplayLabel = 'Fecha de modificaci'#243'n' - DictionaryEntry = 'Contactos_FECHA_MODIFICACION' - end - item - Name = 'USUARIO' - DataType = datString - Size = 20 - DisplayLabel = 'Usuario' - DictionaryEntry = 'Contactos_USUARIO' - end - item - Name = 'ID_EMPRESA' - DataType = datInteger - end - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - DisplayLabel = 'Referencia' - ServerAutoRefresh = True - DictionaryEntry = 'Contactos_REFERENCIA' - end> - end inherited ds_Contactos: TDADataSource DataSet = tbl_Contactos.Dataset end @@ -171,6 +13,9 @@ inherited DataModuleEmpleados: TDataModuleEmpleados inherited ds_PersonalContacto: TDADataSource DataSet = tbl_PersonalContacto.Dataset end + inherited ds_ListaAnosObjetivosAlb: TDADataSource + DataSet = tbl_ListaAnosObjetivosAlb.Dataset + end object tbl_Empleados: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < @@ -237,6 +82,21 @@ inherited DataModuleEmpleados: TDataModuleEmpleados DisplayLabel = 'C'#243'digo postal' DictionaryEntry = 'Contactos_CODIGO_POSTAL' end + item + Name = 'PAIS' + DataType = datString + Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 + end + item + Name = 'IDIOMA' + DataType = datString + Size = 255 + end item Name = 'TELEFONO_1' DataType = datString @@ -400,8 +260,6 @@ inherited DataModuleEmpleados: TDataModuleEmpleados StreamingOptions = [soDisableEventsWhileStreaming] RemoteDataAdapter = rda_Contactos LocalDataStreamer = Bin2DataStreamer - DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] - MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'Empleados' IndexDefs = <> Left = 296 @@ -435,8 +293,6 @@ inherited DataModuleEmpleados: TDataModuleEmpleados StreamingOptions = [soDisableEventsWhileStreaming] RemoteDataAdapter = rda_Contactos LocalDataStreamer = Bin2DataStreamer - DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] - MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'GruposEmpleado' IndexDefs = <> Left = 448 diff --git a/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm b/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm index e8ab7b0..e26adad 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm @@ -19,6 +19,9 @@ inherited DataModuleProveedores: TDataModuleProveedores Left = 408 Top = 240 end + inherited ds_ListaAnosObjetivosAlb: TDADataSource + DataSet = tbl_ListaAnosObjetivosAlb.Dataset + end object tbl_GruposProveedor: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < @@ -118,6 +121,21 @@ inherited DataModuleProveedores: TDataModuleProveedores DisplayLabel = 'C'#243'digo postal' DictionaryEntry = 'Contactos_CODIGO_POSTAL' end + item + Name = 'PAIS' + DataType = datString + Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 + end + item + Name = 'IDIOMA' + DataType = datString + Size = 255 + end item Name = 'TELEFONO_1' DataType = datString @@ -296,11 +314,6 @@ inherited DataModuleProveedores: TDataModuleProveedores item Name = 'VENCIMIENTO_FACTURAS_3' DataType = datSmallInt - end - item - Name = 'PAIS' - DataType = datString - Size = 255 end> Params = <> StreamingOptions = [soDisableEventsWhileStreaming] diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dpk b/Source/Modulos/Contactos/Model/Contactos_model.dpk index aa25b09..6772523 100644 --- a/Source/Modulos/Contactos/Model/Contactos_model.dpk +++ b/Source/Modulos/Contactos/Model/Contactos_model.dpk @@ -60,6 +60,7 @@ contains uBizClientesDescuentos in 'uBizClientesDescuentos.pas', uBizAgentesObjetivosFacturas in 'uBizAgentesObjetivosFacturas.pas', uBizAgentesObjetivosAlbaranes in 'uBizAgentesObjetivosAlbaranes.pas', - uBizTiposCliente in 'uBizTiposCliente.pas'; + uBizTiposCliente in 'uBizTiposCliente.pas', + uBizIdiomas in 'uBizIdiomas.pas'; end. diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dproj b/Source/Modulos/Contactos/Model/Contactos_model.dproj index 9bbc68e..b7a49a7 100644 --- a/Source/Modulos/Contactos/Model/Contactos_model.dproj +++ b/Source/Modulos/Contactos/Model/Contactos_model.dproj @@ -50,17 +50,10 @@ MainSource - - - - - - - - - - - + + + + @@ -68,6 +61,11 @@ + + + + + @@ -82,7 +80,10 @@ + + + \ No newline at end of file +EurekaLog Last Line --> diff --git a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm index e65c906..f3b416c 100644 --- a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm +++ b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm @@ -217,15 +217,6 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente DataType = datInteger DictionaryEntry = 'PresupuestosCliente_ID_FORMA_PAGO' end - item - Name = 'ID_FACTURA_PROFORMA' - DataType = datInteger - end - item - Name = 'FACTURA_PROFORMA' - DataType = datString - Size = 255 - end item Name = 'PERSONA_CONTACTO' DataType = datString @@ -255,6 +246,11 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente item Name = 'ID_TIPO_IVA' DataType = datInteger + end + item + Name = 'REFERENCIA_FACTURA_PROFORMA' + DataType = datString + Size = 255 end> Params = <> StreamingOptions = [soDisableEventsWhileStreaming] diff --git a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas index bd66f6a..82c542c 100644 --- a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas +++ b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas @@ -9,9 +9,9 @@ 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_ListaAnosPresupuestos = '{A4D408B4-9527-45F7-9A1C-536B4FB19884}'; - RID_PresupuestosCliente = '{1544B06D-1221-46F4-AFF1-D58C4B1AE295}'; - RID_PresupuestosCliente_Detalles = '{F13AC3B1-BB99-490A-B13A-2F495F3944C5}'; + RID_ListaAnosPresupuestos = '{0DFD9AC5-2B0E-4391-A5AD-D2972D58E463}'; + RID_PresupuestosCliente = '{F3013194-911B-415B-A792-25AF245FF2B2}'; + RID_PresupuestosCliente_Detalles = '{EC5C0790-12D9-4C7D-9254-32E249A3F2F7}'; { Data table names } nme_ListaAnosPresupuestos = 'ListaAnosPresupuestos'; @@ -55,14 +55,13 @@ const fld_PresupuestosClienteIMPORTE_IVA = 'IMPORTE_IVA'; fld_PresupuestosClienteIMPORTE_TOTAL = 'IMPORTE_TOTAL'; fld_PresupuestosClienteID_FORMA_PAGO = 'ID_FORMA_PAGO'; - fld_PresupuestosClienteID_FACTURA_PROFORMA = 'ID_FACTURA_PROFORMA'; - fld_PresupuestosClienteFACTURA_PROFORMA = 'FACTURA_PROFORMA'; fld_PresupuestosClientePERSONA_CONTACTO = 'PERSONA_CONTACTO'; fld_PresupuestosClienteDESCRIPCION_BONIFICACION = 'DESCRIPCION_BONIFICACION'; fld_PresupuestosClienteIMPORTE_BONIFICACION = 'IMPORTE_BONIFICACION'; fld_PresupuestosClienteFECHA_VIGENCIA = 'FECHA_VIGENCIA'; fld_PresupuestosClienteTIPO_PRESUPUESTO = 'TIPO_PRESUPUESTO'; fld_PresupuestosClienteID_TIPO_IVA = 'ID_TIPO_IVA'; + fld_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA = 'REFERENCIA_FACTURA_PROFORMA'; { PresupuestosCliente field indexes } idx_PresupuestosClienteID = 0; @@ -95,14 +94,13 @@ const idx_PresupuestosClienteIMPORTE_IVA = 27; idx_PresupuestosClienteIMPORTE_TOTAL = 28; idx_PresupuestosClienteID_FORMA_PAGO = 29; - idx_PresupuestosClienteID_FACTURA_PROFORMA = 30; - idx_PresupuestosClienteFACTURA_PROFORMA = 31; - idx_PresupuestosClientePERSONA_CONTACTO = 32; - idx_PresupuestosClienteDESCRIPCION_BONIFICACION = 33; - idx_PresupuestosClienteIMPORTE_BONIFICACION = 34; - idx_PresupuestosClienteFECHA_VIGENCIA = 35; - idx_PresupuestosClienteTIPO_PRESUPUESTO = 36; - idx_PresupuestosClienteID_TIPO_IVA = 37; + idx_PresupuestosClientePERSONA_CONTACTO = 30; + idx_PresupuestosClienteDESCRIPCION_BONIFICACION = 31; + idx_PresupuestosClienteIMPORTE_BONIFICACION = 32; + idx_PresupuestosClienteFECHA_VIGENCIA = 33; + idx_PresupuestosClienteTIPO_PRESUPUESTO = 34; + idx_PresupuestosClienteID_TIPO_IVA = 35; + idx_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA = 36; { PresupuestosCliente_Detalles fields } fld_PresupuestosCliente_DetallesID = 'ID'; @@ -141,7 +139,7 @@ const type { IListaAnosPresupuestos } IListaAnosPresupuestos = interface(IDAStronglyTypedDataTable) - ['{C610654D-7E6C-4A10-8CDC-BFA1C6D3AB09}'] + ['{B096570B-EC83-4316-88E0-9C42EFFA2CD3}'] { Property getters and setters } function GetANOValue: String; procedure SetANOValue(const aValue: String); @@ -176,7 +174,7 @@ type { IPresupuestosCliente } IPresupuestosCliente = interface(IDAStronglyTypedDataTable) - ['{EB145AB3-4E1A-48E4-8972-96CBFCC6A5BA}'] + ['{D25B93AB-F578-4F0A-8DD3-FE58DA2C6F92}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -294,14 +292,6 @@ type procedure SetID_FORMA_PAGOValue(const aValue: Integer); function GetID_FORMA_PAGOIsNull: Boolean; procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); - function GetID_FACTURA_PROFORMAValue: Integer; - procedure SetID_FACTURA_PROFORMAValue(const aValue: Integer); - function GetID_FACTURA_PROFORMAIsNull: Boolean; - procedure SetID_FACTURA_PROFORMAIsNull(const aValue: Boolean); - function GetFACTURA_PROFORMAValue: String; - procedure SetFACTURA_PROFORMAValue(const aValue: String); - function GetFACTURA_PROFORMAIsNull: Boolean; - procedure SetFACTURA_PROFORMAIsNull(const aValue: Boolean); function GetPERSONA_CONTACTOValue: String; procedure SetPERSONA_CONTACTOValue(const aValue: String); function GetPERSONA_CONTACTOIsNull: Boolean; @@ -326,6 +316,10 @@ type procedure SetID_TIPO_IVAValue(const aValue: Integer); function GetID_TIPO_IVAIsNull: Boolean; procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); + function GetREFERENCIA_FACTURA_PROFORMAValue: String; + procedure SetREFERENCIA_FACTURA_PROFORMAValue(const aValue: String); + function GetREFERENCIA_FACTURA_PROFORMAIsNull: Boolean; + procedure SetREFERENCIA_FACTURA_PROFORMAIsNull(const aValue: Boolean); { Properties } @@ -389,10 +383,6 @@ type property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; - property ID_FACTURA_PROFORMA: Integer read GetID_FACTURA_PROFORMAValue write SetID_FACTURA_PROFORMAValue; - property ID_FACTURA_PROFORMAIsNull: Boolean read GetID_FACTURA_PROFORMAIsNull write SetID_FACTURA_PROFORMAIsNull; - property FACTURA_PROFORMA: String read GetFACTURA_PROFORMAValue write SetFACTURA_PROFORMAValue; - property FACTURA_PROFORMAIsNull: Boolean read GetFACTURA_PROFORMAIsNull write SetFACTURA_PROFORMAIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property DESCRIPCION_BONIFICACION: String read GetDESCRIPCION_BONIFICACIONValue write SetDESCRIPCION_BONIFICACIONValue; @@ -405,6 +395,8 @@ type property TIPO_PRESUPUESTOIsNull: Boolean read GetTIPO_PRESUPUESTOIsNull write SetTIPO_PRESUPUESTOIsNull; property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; property ID_TIPO_IVAIsNull: Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property REFERENCIA_FACTURA_PROFORMA: String read GetREFERENCIA_FACTURA_PROFORMAValue write SetREFERENCIA_FACTURA_PROFORMAValue; + property REFERENCIA_FACTURA_PROFORMAIsNull: Boolean read GetREFERENCIA_FACTURA_PROFORMAIsNull write SetREFERENCIA_FACTURA_PROFORMAIsNull; end; { TPresupuestosClienteDataTableRules } @@ -536,14 +528,6 @@ type procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; function GetID_FORMA_PAGOIsNull: Boolean; virtual; procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; - function GetID_FACTURA_PROFORMAValue: Integer; virtual; - procedure SetID_FACTURA_PROFORMAValue(const aValue: Integer); virtual; - function GetID_FACTURA_PROFORMAIsNull: Boolean; virtual; - procedure SetID_FACTURA_PROFORMAIsNull(const aValue: Boolean); virtual; - function GetFACTURA_PROFORMAValue: String; virtual; - procedure SetFACTURA_PROFORMAValue(const aValue: String); virtual; - function GetFACTURA_PROFORMAIsNull: Boolean; virtual; - procedure SetFACTURA_PROFORMAIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; function GetPERSONA_CONTACTOIsNull: Boolean; virtual; @@ -568,6 +552,10 @@ type procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; function GetID_TIPO_IVAIsNull: Boolean; virtual; procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); virtual; + function GetREFERENCIA_FACTURA_PROFORMAValue: String; virtual; + procedure SetREFERENCIA_FACTURA_PROFORMAValue(const aValue: String); virtual; + function GetREFERENCIA_FACTURA_PROFORMAIsNull: Boolean; virtual; + procedure SetREFERENCIA_FACTURA_PROFORMAIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; @@ -630,10 +618,6 @@ type property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; - property ID_FACTURA_PROFORMA: Integer read GetID_FACTURA_PROFORMAValue write SetID_FACTURA_PROFORMAValue; - property ID_FACTURA_PROFORMAIsNull: Boolean read GetID_FACTURA_PROFORMAIsNull write SetID_FACTURA_PROFORMAIsNull; - property FACTURA_PROFORMA: String read GetFACTURA_PROFORMAValue write SetFACTURA_PROFORMAValue; - property FACTURA_PROFORMAIsNull: Boolean read GetFACTURA_PROFORMAIsNull write SetFACTURA_PROFORMAIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property DESCRIPCION_BONIFICACION: String read GetDESCRIPCION_BONIFICACIONValue write SetDESCRIPCION_BONIFICACIONValue; @@ -646,6 +630,8 @@ type property TIPO_PRESUPUESTOIsNull: Boolean read GetTIPO_PRESUPUESTOIsNull write SetTIPO_PRESUPUESTOIsNull; property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; property ID_TIPO_IVAIsNull: Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property REFERENCIA_FACTURA_PROFORMA: String read GetREFERENCIA_FACTURA_PROFORMAValue write SetREFERENCIA_FACTURA_PROFORMAValue; + property REFERENCIA_FACTURA_PROFORMAIsNull: Boolean read GetREFERENCIA_FACTURA_PROFORMAIsNull write SetREFERENCIA_FACTURA_PROFORMAIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -655,7 +641,7 @@ type { IPresupuestosCliente_Detalles } IPresupuestosCliente_Detalles = interface(IDAStronglyTypedDataTable) - ['{3A6F2B7A-EDAF-4606-B8CE-B24BED8ECBB7}'] + ['{B69BE1A7-680A-4746-9126-47FD4BE7A252}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -1556,48 +1542,6 @@ begin DataTable.Fields[idx_PresupuestosClienteID_FORMA_PAGO].AsVariant := Null; end; -function TPresupuestosClienteDataTableRules.GetID_FACTURA_PROFORMAValue: Integer; -begin - result := DataTable.Fields[idx_PresupuestosClienteID_FACTURA_PROFORMA].AsInteger; -end; - -procedure TPresupuestosClienteDataTableRules.SetID_FACTURA_PROFORMAValue(const aValue: Integer); -begin - DataTable.Fields[idx_PresupuestosClienteID_FACTURA_PROFORMA].AsInteger := aValue; -end; - -function TPresupuestosClienteDataTableRules.GetID_FACTURA_PROFORMAIsNull: boolean; -begin - result := DataTable.Fields[idx_PresupuestosClienteID_FACTURA_PROFORMA].IsNull; -end; - -procedure TPresupuestosClienteDataTableRules.SetID_FACTURA_PROFORMAIsNull(const aValue: Boolean); -begin - if aValue then - DataTable.Fields[idx_PresupuestosClienteID_FACTURA_PROFORMA].AsVariant := Null; -end; - -function TPresupuestosClienteDataTableRules.GetFACTURA_PROFORMAValue: String; -begin - result := DataTable.Fields[idx_PresupuestosClienteFACTURA_PROFORMA].AsString; -end; - -procedure TPresupuestosClienteDataTableRules.SetFACTURA_PROFORMAValue(const aValue: String); -begin - DataTable.Fields[idx_PresupuestosClienteFACTURA_PROFORMA].AsString := aValue; -end; - -function TPresupuestosClienteDataTableRules.GetFACTURA_PROFORMAIsNull: boolean; -begin - result := DataTable.Fields[idx_PresupuestosClienteFACTURA_PROFORMA].IsNull; -end; - -procedure TPresupuestosClienteDataTableRules.SetFACTURA_PROFORMAIsNull(const aValue: Boolean); -begin - if aValue then - DataTable.Fields[idx_PresupuestosClienteFACTURA_PROFORMA].AsVariant := Null; -end; - function TPresupuestosClienteDataTableRules.GetPERSONA_CONTACTOValue: String; begin result := DataTable.Fields[idx_PresupuestosClientePERSONA_CONTACTO].AsString; @@ -1724,6 +1668,27 @@ begin DataTable.Fields[idx_PresupuestosClienteID_TIPO_IVA].AsVariant := Null; end; +function TPresupuestosClienteDataTableRules.GetREFERENCIA_FACTURA_PROFORMAValue: String; +begin + result := DataTable.Fields[idx_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA].AsString; +end; + +procedure TPresupuestosClienteDataTableRules.SetREFERENCIA_FACTURA_PROFORMAValue(const aValue: String); +begin + DataTable.Fields[idx_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA].AsString := aValue; +end; + +function TPresupuestosClienteDataTableRules.GetREFERENCIA_FACTURA_PROFORMAIsNull: boolean; +begin + result := DataTable.Fields[idx_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA].IsNull; +end; + +procedure TPresupuestosClienteDataTableRules.SetREFERENCIA_FACTURA_PROFORMAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA].AsVariant := Null; +end; + { TPresupuestosCliente_DetallesDataTableRules } constructor TPresupuestosCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable); diff --git a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas index 33d6c97..beb56a7 100644 --- a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas +++ b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas @@ -9,14 +9,14 @@ const { Delta rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_ListaAnosPresupuestosDelta = '{64A0D3FB-00DD-4AB8-A593-BBCD65384819}'; - RID_PresupuestosClienteDelta = '{58B1773F-4AD1-42C4-B37D-A211DA2B6130}'; - RID_PresupuestosCliente_DetallesDelta = '{61BEA975-8449-48D5-AE10-E049BFF6FF92}'; + RID_ListaAnosPresupuestosDelta = '{1BD24E51-7782-44FE-93E8-8C6BC7D478B2}'; + RID_PresupuestosClienteDelta = '{38421517-6CF1-413E-B935-F0E9E5738EA1}'; + RID_PresupuestosCliente_DetallesDelta = '{0F8DB91C-0111-4BAE-9B54-1DF8F0668885}'; type { IListaAnosPresupuestosDelta } IListaAnosPresupuestosDelta = interface(IListaAnosPresupuestos) - ['{64A0D3FB-00DD-4AB8-A593-BBCD65384819}'] + ['{1BD24E51-7782-44FE-93E8-8C6BC7D478B2}'] { Property getters and setters } function GetOldANOValue : String; @@ -50,7 +50,7 @@ type { IPresupuestosClienteDelta } IPresupuestosClienteDelta = interface(IPresupuestosCliente) - ['{58B1773F-4AD1-42C4-B37D-A211DA2B6130}'] + ['{38421517-6CF1-413E-B935-F0E9E5738EA1}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_EMPRESAValue : Integer; @@ -82,14 +82,13 @@ type function GetOldIMPORTE_IVAValue : Currency; function GetOldIMPORTE_TOTALValue : Currency; function GetOldID_FORMA_PAGOValue : Integer; - function GetOldID_FACTURA_PROFORMAValue : Integer; - function GetOldFACTURA_PROFORMAValue : String; function GetOldPERSONA_CONTACTOValue : String; function GetOldDESCRIPCION_BONIFICACIONValue : String; function GetOldIMPORTE_BONIFICACIONValue : Currency; function GetOldFECHA_VIGENCIAValue : DateTime; function GetOldTIPO_PRESUPUESTOValue : String; function GetOldID_TIPO_IVAValue : Integer; + function GetOldREFERENCIA_FACTURA_PROFORMAValue : String; { Properties } property OldID : Integer read GetOldIDValue; @@ -122,14 +121,13 @@ type property OldIMPORTE_IVA : Currency read GetOldIMPORTE_IVAValue; property OldIMPORTE_TOTAL : Currency read GetOldIMPORTE_TOTALValue; property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; - property OldID_FACTURA_PROFORMA : Integer read GetOldID_FACTURA_PROFORMAValue; - property OldFACTURA_PROFORMA : String read GetOldFACTURA_PROFORMAValue; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; property OldDESCRIPCION_BONIFICACION : String read GetOldDESCRIPCION_BONIFICACIONValue; property OldIMPORTE_BONIFICACION : Currency read GetOldIMPORTE_BONIFICACIONValue; property OldFECHA_VIGENCIA : DateTime read GetOldFECHA_VIGENCIAValue; property OldTIPO_PRESUPUESTO : String read GetOldTIPO_PRESUPUESTOValue; property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; + property OldREFERENCIA_FACTURA_PROFORMA : String read GetOldREFERENCIA_FACTURA_PROFORMAValue; end; { TPresupuestosClienteBusinessProcessorRules } @@ -321,18 +319,6 @@ type function GetOldID_FORMA_PAGOIsNull: Boolean; virtual; procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; - function GetID_FACTURA_PROFORMAValue: Integer; virtual; - function GetID_FACTURA_PROFORMAIsNull: Boolean; virtual; - function GetOldID_FACTURA_PROFORMAValue: Integer; virtual; - function GetOldID_FACTURA_PROFORMAIsNull: Boolean; virtual; - procedure SetID_FACTURA_PROFORMAValue(const aValue: Integer); virtual; - procedure SetID_FACTURA_PROFORMAIsNull(const aValue: Boolean); virtual; - function GetFACTURA_PROFORMAValue: String; virtual; - function GetFACTURA_PROFORMAIsNull: Boolean; virtual; - function GetOldFACTURA_PROFORMAValue: String; virtual; - function GetOldFACTURA_PROFORMAIsNull: Boolean; virtual; - procedure SetFACTURA_PROFORMAValue(const aValue: String); virtual; - procedure SetFACTURA_PROFORMAIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; function GetPERSONA_CONTACTOIsNull: Boolean; virtual; function GetOldPERSONA_CONTACTOValue: String; virtual; @@ -369,6 +355,12 @@ type function GetOldID_TIPO_IVAIsNull: Boolean; virtual; procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); virtual; + function GetREFERENCIA_FACTURA_PROFORMAValue: String; virtual; + function GetREFERENCIA_FACTURA_PROFORMAIsNull: Boolean; virtual; + function GetOldREFERENCIA_FACTURA_PROFORMAValue: String; virtual; + function GetOldREFERENCIA_FACTURA_PROFORMAIsNull: Boolean; virtual; + procedure SetREFERENCIA_FACTURA_PROFORMAValue(const aValue: String); virtual; + procedure SetREFERENCIA_FACTURA_PROFORMAIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; @@ -491,14 +483,6 @@ type property ID_FORMA_PAGOIsNull : Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; property OldID_FORMA_PAGOIsNull : Boolean read GetOldID_FORMA_PAGOIsNull; - property ID_FACTURA_PROFORMA : Integer read GetID_FACTURA_PROFORMAValue write SetID_FACTURA_PROFORMAValue; - property ID_FACTURA_PROFORMAIsNull : Boolean read GetID_FACTURA_PROFORMAIsNull write SetID_FACTURA_PROFORMAIsNull; - property OldID_FACTURA_PROFORMA : Integer read GetOldID_FACTURA_PROFORMAValue; - property OldID_FACTURA_PROFORMAIsNull : Boolean read GetOldID_FACTURA_PROFORMAIsNull; - property FACTURA_PROFORMA : String read GetFACTURA_PROFORMAValue write SetFACTURA_PROFORMAValue; - property FACTURA_PROFORMAIsNull : Boolean read GetFACTURA_PROFORMAIsNull write SetFACTURA_PROFORMAIsNull; - property OldFACTURA_PROFORMA : String read GetOldFACTURA_PROFORMAValue; - property OldFACTURA_PROFORMAIsNull : Boolean read GetOldFACTURA_PROFORMAIsNull; property PERSONA_CONTACTO : String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; property PERSONA_CONTACTOIsNull : Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; @@ -523,6 +507,10 @@ type property ID_TIPO_IVAIsNull : Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; property OldID_TIPO_IVAIsNull : Boolean read GetOldID_TIPO_IVAIsNull; + property REFERENCIA_FACTURA_PROFORMA : String read GetREFERENCIA_FACTURA_PROFORMAValue write SetREFERENCIA_FACTURA_PROFORMAValue; + property REFERENCIA_FACTURA_PROFORMAIsNull : Boolean read GetREFERENCIA_FACTURA_PROFORMAIsNull write SetREFERENCIA_FACTURA_PROFORMAIsNull; + property OldREFERENCIA_FACTURA_PROFORMA : String read GetOldREFERENCIA_FACTURA_PROFORMAValue; + property OldREFERENCIA_FACTURA_PROFORMAIsNull : Boolean read GetOldREFERENCIA_FACTURA_PROFORMAIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -532,7 +520,7 @@ type { IPresupuestosCliente_DetallesDelta } IPresupuestosCliente_DetallesDelta = interface(IPresupuestosCliente_Detalles) - ['{61BEA975-8449-48D5-AE10-E049BFF6FF92}'] + ['{0F8DB91C-0111-4BAE-9B54-1DF8F0668885}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_PRESUPUESTOValue : Integer; @@ -1747,68 +1735,6 @@ begin BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_FORMA_PAGO] := Null; end; -function TPresupuestosClienteBusinessProcessorRules.GetID_FACTURA_PROFORMAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_FACTURA_PROFORMA]; -end; - -function TPresupuestosClienteBusinessProcessorRules.GetID_FACTURA_PROFORMAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_FACTURA_PROFORMA]); -end; - -function TPresupuestosClienteBusinessProcessorRules.GetOldID_FACTURA_PROFORMAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteID_FACTURA_PROFORMA]; -end; - -function TPresupuestosClienteBusinessProcessorRules.GetOldID_FACTURA_PROFORMAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteID_FACTURA_PROFORMA]); -end; - -procedure TPresupuestosClienteBusinessProcessorRules.SetID_FACTURA_PROFORMAValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_FACTURA_PROFORMA] := aValue; -end; - -procedure TPresupuestosClienteBusinessProcessorRules.SetID_FACTURA_PROFORMAIsNull(const aValue: Boolean); -begin - if aValue then - BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_FACTURA_PROFORMA] := Null; -end; - -function TPresupuestosClienteBusinessProcessorRules.GetFACTURA_PROFORMAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteFACTURA_PROFORMA]; -end; - -function TPresupuestosClienteBusinessProcessorRules.GetFACTURA_PROFORMAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteFACTURA_PROFORMA]); -end; - -function TPresupuestosClienteBusinessProcessorRules.GetOldFACTURA_PROFORMAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteFACTURA_PROFORMA]; -end; - -function TPresupuestosClienteBusinessProcessorRules.GetOldFACTURA_PROFORMAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteFACTURA_PROFORMA]); -end; - -procedure TPresupuestosClienteBusinessProcessorRules.SetFACTURA_PROFORMAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteFACTURA_PROFORMA] := aValue; -end; - -procedure TPresupuestosClienteBusinessProcessorRules.SetFACTURA_PROFORMAIsNull(const aValue: Boolean); -begin - if aValue then - BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteFACTURA_PROFORMA] := Null; -end; - function TPresupuestosClienteBusinessProcessorRules.GetPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClientePERSONA_CONTACTO]; @@ -1995,6 +1921,37 @@ begin BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteID_TIPO_IVA] := Null; end; +function TPresupuestosClienteBusinessProcessorRules.GetREFERENCIA_FACTURA_PROFORMAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA]; +end; + +function TPresupuestosClienteBusinessProcessorRules.GetREFERENCIA_FACTURA_PROFORMAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA]); +end; + +function TPresupuestosClienteBusinessProcessorRules.GetOldREFERENCIA_FACTURA_PROFORMAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA]; +end; + +function TPresupuestosClienteBusinessProcessorRules.GetOldREFERENCIA_FACTURA_PROFORMAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA]); +end; + +procedure TPresupuestosClienteBusinessProcessorRules.SetREFERENCIA_FACTURA_PROFORMAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA] := aValue; +end; + +procedure TPresupuestosClienteBusinessProcessorRules.SetREFERENCIA_FACTURA_PROFORMAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PresupuestosClienteREFERENCIA_FACTURA_PROFORMA] := Null; +end; + { TPresupuestosCliente_DetallesBusinessProcessorRules } constructor TPresupuestosCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); diff --git a/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj b/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj index 0c25984..205e721 100644 --- a/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj +++ b/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj @@ -25,7 +25,10 @@ + + + @@ -301,14 +304,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + \ No newline at end of file diff --git a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm index 8e3200c..bba438f 100644 --- a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm +++ b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm @@ -360,11 +360,12 @@ object RptPresupuestosCliente: TRptPresupuestosCliente ' COALESCE(CONTACTOS_DIRECCIONES.PROVINCIA, CONTACTOS.PROVINCIA)' + ' AS PROVINCIA,'#10' COALESCE(CONTACTOS_DIRECCIONES.CODIGO_POSTAL,' + ' CONTACTOS.CODIGO_POSTAL) AS CODIGO_POSTAL,'#10' V_PRESUPUESTOS_C' + - 'LIENTE.PERSONA_CONTACTO'#10'FROM'#10' V_PRESUPUESTOS_CLIENTE'#10' INNE' + - 'R JOIN CONTACTOS ON (CONTACTOS.ID = V_PRESUPUESTOS_CLIENTE.ID_CL' + - 'IENTE)'#10' LEFT OUTER JOIN CONTACTOS_DIRECCIONES ON (CONTACTOS_D' + - 'IRECCIONES.ID = V_PRESUPUESTOS_CLIENTE.ID_DIRECCION)'#10'WHERE'#10' V' + - '_PRESUPUESTOS_CLIENTE.ID = :ID'#10' '#10' '#10' '#10' '#10#10#10#10 + 'LIENTE.PERSONA_CONTACTO,'#10' CONTACTOS.IDIOMA_ISO'#10'FROM'#10' V_PRE' + + 'SUPUESTOS_CLIENTE'#10' INNER JOIN CONTACTOS ON (CONTACTOS.ID = V_' + + 'PRESUPUESTOS_CLIENTE.ID_CLIENTE)'#10' LEFT OUTER JOIN CONTACTOS_D' + + 'IRECCIONES ON (CONTACTOS_DIRECCIONES.ID = V_PRESUPUESTOS_CLIENTE' + + '.ID_DIRECCION)'#10'WHERE'#10' V_PRESUPUESTOS_CLIENTE.ID = :ID'#10' '#10' ' + + ' '#10' '#10' '#10#10#10#10 StatementType = stSQL ColumnMappings = < item @@ -470,6 +471,10 @@ object RptPresupuestosCliente: TRptPresupuestosCliente item DatasetField = 'INCIDENCIAS_ACTIVAS' TableField = 'INCIDENCIAS_ACTIVAS' + end + item + DatasetField = 'IDIOMA_ISO' + TableField = 'IDIOMA_ISO' end> end> Name = 'Informe_Cabecera' @@ -589,6 +594,11 @@ object RptPresupuestosCliente: TRptPresupuestosCliente Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 end> ReadOnly = True end @@ -933,6 +943,11 @@ object RptPresupuestosCliente: TRptPresupuestosCliente Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 + end + item + Name = 'IDIOMA_ISO' + DataType = datString + Size = 2 end> Params = < item diff --git a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas index 07ee767..fbbd698 100644 --- a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas +++ b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas @@ -518,7 +518,7 @@ begin tbl_Cabecera.Active := True; tbl_Detalles.Active := True; - AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString); + AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString); if VarIsNull(AInforme) then raise Exception.Create (('Error Servidor: _GenerarPresupuesto, no encuentra informe ' + rptInforme)); diff --git a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm index 4beff61..167699d 100644 --- a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm +++ b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm @@ -192,12 +192,8 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente TableField = 'ID_TIPO_IVA' end item - DatasetField = 'ID_FACTURA_PROFORMA' - TableField = 'ID_FACTURA_PROFORMA' - end - item - DatasetField = 'FACTURA_PROFORMA' - TableField = 'FACTURA_PROFORMA' + DatasetField = 'REFERENCIA_FACTURA_PROFORMA' + TableField = 'REFERENCIA_FACTURA_PROFORMA' end> end> Name = 'PresupuestosCliente' @@ -364,15 +360,6 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente DataType = datInteger DictionaryEntry = 'PresupuestosCliente_ID_FORMA_PAGO' end - item - Name = 'ID_FACTURA_PROFORMA' - DataType = datInteger - end - item - Name = 'FACTURA_PROFORMA' - DataType = datString - Size = 255 - end item Name = 'PERSONA_CONTACTO' DataType = datString @@ -401,6 +388,11 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente item Name = 'ID_TIPO_IVA' DataType = datInteger + end + item + Name = 'REFERENCIA_FACTURA_PROFORMA' + DataType = datString + Size = 255 end> end item @@ -719,11 +711,6 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente DataType = datInteger Value = '' end - item - Name = 'ID_FACTURA_PROFORMA' - DataType = datInteger - Value = '' - end item Name = 'PERSONA_CONTACTO' DataType = datString @@ -769,19 +756,18 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente 'E_FINAL, PORTADA, MEMORIA, OBSERVACIONES, INCIDENCIAS, '#10' INC' + 'IDENCIAS_ACTIVAS, FECHA_ALTA,'#10' USUARIO, IMPORTE_NETO, IMPORT' + 'E_PORTE, DESCUENTO, IMPORTE_DESCUENTO, '#10' BASE_IMPONIBLE, IVA' + - ', IMPORTE_IVA, IMPORTE_TOTAL, ID_FORMA_PAGO, ID_FACTURA_PROFORMA' + - ','#10' PERSONA_CONTACTO, DESCRIPCION_BONIFICACION, IMPORTE_BONIF' + - 'ICACION, FECHA_VIGENCIA,'#10' TIPO_PRESUPUESTO, ID_TIPO_IVA)'#10' V' + - 'ALUES'#10' (:ID, :ID_EMPRESA, :FECHA_PRESUPUESTO, :FECHA_DECISION' + - ', :REFERENCIA,'#10' :REFERENCIA_AUX, :SITUACION, :ID_CLIENTE, :I' + - 'D_DIRECCION, :REFERENCIA_CLIENTE,'#10' :CLIENTE_FINAL, :PORTADA,' + - ' :MEMORIA, :OBSERVACIONES, '#10' :INCIDENCIAS, :INCIDENCIAS_ACTI' + - 'VAS, CURRENT_TIMESTAMP,'#10' :USUARIO, :IMPORTE_NETO, :IMPORTE_P' + - 'ORTE, :DESCUENTO, '#10' :IMPORTE_DESCUENTO, :BASE_IMPONIBLE, :IV' + - 'A, :IMPORTE_IVA, '#10' :IMPORTE_TOTAL, :ID_FORMA_PAGO, :ID_FACTU' + - 'RA_PROFORMA, :PERSONA_CONTACTO,'#10' :DESCRIPCION_BONIFICACION, ' + - ':IMPORTE_BONIFICACION, :FECHA_VIGENCIA, :TIPO_PRESUPUESTO,'#10' ' + - ':ID_TIPO_IVA)'#10 + ', IMPORTE_IVA, IMPORTE_TOTAL, ID_FORMA_PAGO,'#10' PERSONA_CONTAC' + + 'TO, DESCRIPCION_BONIFICACION, IMPORTE_BONIFICACION, FECHA_VIGENC' + + 'IA,'#10' TIPO_PRESUPUESTO, ID_TIPO_IVA)'#10' VALUES'#10' (:ID, :ID_E' + + 'MPRESA, :FECHA_PRESUPUESTO, :FECHA_DECISION, :REFERENCIA,'#10' :' + + 'REFERENCIA_AUX, :SITUACION, :ID_CLIENTE, :ID_DIRECCION, :REFEREN' + + 'CIA_CLIENTE,'#10' :CLIENTE_FINAL, :PORTADA, :MEMORIA, :OBSERVACI' + + 'ONES, '#10' :INCIDENCIAS, :INCIDENCIAS_ACTIVAS, CURRENT_TIMESTAM' + + 'P,'#10' :USUARIO, :IMPORTE_NETO, :IMPORTE_PORTE, :DESCUENTO, '#10' ' + + ' :IMPORTE_DESCUENTO, :BASE_IMPONIBLE, :IVA, :IMPORTE_IVA, '#10' ' + + ' :IMPORTE_TOTAL, :ID_FORMA_PAGO, :PERSONA_CONTACTO,'#10' :DESCR' + + 'IPCION_BONIFICACION, :IMPORTE_BONIFICACION, :FECHA_VIGENCIA, :TI' + + 'PO_PRESUPUESTO,'#10' :ID_TIPO_IVA)'#10 StatementType = stSQL ColumnMappings = <> end> @@ -945,11 +931,6 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente DataType = datInteger Value = '' end - item - Name = 'ID_FACTURA_PROFORMA' - DataType = datInteger - Value = '' - end item Name = 'PERSONA_CONTACTO' DataType = datString @@ -1008,12 +989,11 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente 'TO = :IMPORTE_DESCUENTO, '#10' BASE_IMPONIBLE = :BASE_IMPONIBLE, ' + #10' IVA = :IVA, '#10' IMPORTE_IVA = :IMPORTE_IVA, '#10' IMPORTE_T' + 'OTAL = :IMPORTE_TOTAL, '#10' ID_FORMA_PAGO = :ID_FORMA_PAGO,'#10' ' + - 'ID_FACTURA_PROFORMA = :ID_FACTURA_PROFORMA,'#10' PERSONA_CONTACTO' + - ' = :PERSONA_CONTACTO,'#10' DESCRIPCION_BONIFICACION = :DESCRIPCIO' + - 'N_BONIFICACION,'#10' IMPORTE_BONIFICACION = :IMPORTE_BONIFICACION' + - ','#10' FECHA_VIGENCIA = :FECHA_VIGENCIA,'#10' TIPO_PRESUPUESTO = :' + - 'TIPO_PRESUPUESTO,'#10' ID_TIPO_IVA = :ID_TIPO_IVA'#10' WHERE'#10' (ID' + - ' = :OLD_ID)'#10 + 'PERSONA_CONTACTO = :PERSONA_CONTACTO,'#10' DESCRIPCION_BONIFICACI' + + 'ON = :DESCRIPCION_BONIFICACION,'#10' IMPORTE_BONIFICACION = :IMPO' + + 'RTE_BONIFICACION,'#10' FECHA_VIGENCIA = :FECHA_VIGENCIA,'#10' TIPO' + + '_PRESUPUESTO = :TIPO_PRESUPUESTO,'#10' ID_TIPO_IVA = :ID_TIPO_IVA' + + #10' WHERE'#10' (ID = :OLD_ID)'#10 StatementType = stSQL ColumnMappings = <> end> diff --git a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.dfm b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.dfm index 9d43566..5e9679f 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.dfm @@ -167,7 +167,7 @@ inherited fEditorPresupuestosCliente: TfEditorPresupuestosCliente DockPos = 343 Visible = True ExplicitLeft = 427 - ExplicitWidth = 373 + ExplicitWidth = 378 object TBXItem43: TTBXItem Action = actAceptar DisplayMode = nbdmImageAndText @@ -220,9 +220,7 @@ inherited fEditorPresupuestosCliente: TfEditorPresupuestosCliente object actGenerarFacturaProforma: TAction Category = 'Acciones' Caption = 'Generar factura proforma' - Enabled = False ImageIndex = 24 - Visible = False OnExecute = actGenerarFacturaProformaExecute OnUpdate = actGenerarFacturaProformaUpdate end diff --git a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas index 2b4501c..05ffdb5 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas +++ b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas @@ -344,7 +344,7 @@ begin inherited; (Sender as TAction).Enabled := HayDatos and not (ViewGrid.NumSeleccionados > 1) - and (FPresupuestos.FACTURA_PROFORMA = '') + and (FPresupuestos.REFERENCIA_FACTURA_PROFORMA = '') and ViewGrid.esSeleccionCeldaDatos and (FPresupuestos.SITUACION = SITUACION_PRESUPUESTO_ACEPTADO); end; diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.dfm index b72988c..611a443 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.dfm @@ -17,8 +17,6 @@ inherited frViewDatosYSeleccionClientePresupuesto: TfrViewDatosYSeleccionCliente TabOrder = 0 TabStop = False AutoContentSizes = [acsWidth, acsHeight] - ExplicitWidth = 505 - ExplicitHeight = 165 DesignSize = ( 638 310) diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.pas index 5c49de9..1512f97 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.pas +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewDatosYSeleccionClientePresupuesto.pas @@ -290,9 +290,9 @@ begin if Assigned(FDireccion) then begin - ACadena := Format('%s %s %s %s', + ACadena := Format('%s %s %s %s %s', [FDireccion.CALLE, FDireccion.POBLACION, - FDireccion.CODIGO_POSTAL, FDireccion.PROVINCIA]); + FDireccion.CODIGO_POSTAL, FDireccion.PROVINCIA, FDireccion.PAIS]); if (not FDireccion.TELEFONOIsNull) and (FDireccion.TELEFONO <> '') then ACadena := ACadena + #13#10 + 'Teléfono: ' + FDireccion.TELEFONO; diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm index 507b56a..c501fc3 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm @@ -135,10 +135,8 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente end object cxGridViewFACTURA_PROFORMA: TcxGridDBColumn Caption = 'Ref. factura proforma' - DataBinding.FieldName = 'FACTURA_PROFORMA' - Visible = False + DataBinding.FieldName = 'REFERENCIA_FACTURA_PROFORMA' BestFitMaxWidth = 25 - VisibleForCustomization = False Width = 25 end end @@ -203,6 +201,8 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' ExplicitLeft = 757 + ExplicitWidth = 215 + Width = 215 end inherited dxLayoutControl1Group_Root: TdxLayoutGroup inherited dxLayoutControl1Group1: TdxLayoutGroup diff --git a/Source/Modulos/ProcesoPresupuestoCliente/Controller/ProcesoPresupuestosCliente_controller.dproj b/Source/Modulos/ProcesoPresupuestoCliente/Controller/ProcesoPresupuestosCliente_controller.dproj index bdfc45f..0bd5292 100644 --- a/Source/Modulos/ProcesoPresupuestoCliente/Controller/ProcesoPresupuestosCliente_controller.dproj +++ b/Source/Modulos/ProcesoPresupuestoCliente/Controller/ProcesoPresupuestosCliente_controller.dproj @@ -49,29 +49,29 @@ MainSource - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + +