From 21a115e2058da35a47a70a951949dc03347ddb97 Mon Sep 17 00:00:00 2001 From: roberto Date: Wed, 23 May 2012 11:49:20 +0000 Subject: [PATCH] =?UTF-8?q?Versi=C3=B3n=202.4.9=20Tareas=20#88:=20Modelos?= =?UTF-8?q?=20de=20cap=C3=ADtulos=20Tareas=20#892:=20Al=20a=C3=B1adir=20un?= =?UTF-8?q?=20articulo=20meter=20todos=20sus=20datos=20(imagen)=20y=20dar?= =?UTF-8?q?=20a=20guardar=20falla.=20(si=20guardo=20sin=20imagen=20y=20lue?= =?UTF-8?q?go=20a=C3=B1ado=20la=20imagen=20funciona)=20Tareas=20#893:=20Po?= =?UTF-8?q?der=20establecer=20las=20familias=20en=20los=20capitulos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@561 f4e31baf-9722-1c47-927c-6f952f962d4b --- .../Views/uEditorConfiguracion.dfm | 31 +- Source/Base/Base.dproj | 138 +++--- Source/Base/Base.res | Bin 384 -> 4748 bytes Source/Cliente/FactuGES.dproj | 9 + Source/Cliente/FactuGES.res | Bin 171984 -> 172184 bytes Source/GUIBase/GUIBase.dproj | 56 +-- Source/GUIBase/uEditorBase.pas | 2 +- Source/Informes/InfContratoCliente.fr3 | 14 +- Source/Informes/InfPresupuestoCliente.fr3 | 12 +- .../Controller/uArticulosController.pas | 13 +- .../Articulos/Data/uDataModuleArticulos.dfm | 2 + .../Model/schArticulosClient_Intf.pas | 91 +++- .../Model/schArticulosServer_Intf.pas | 87 +++- .../Articulos/Servidor/srvArticulos_Impl.dfm | 2 + .../Articulos/Views/Articulos_view.RES | Bin 384 -> 5056 bytes .../Articulos/Views/Articulos_view.dproj | 17 +- .../Articulos/Views/uEditorArticulo.dfm | 5 +- .../Modulos/Articulos/Views/uViewArticulo.dfm | 20 +- .../Model/schContratosClienteClient_Intf.pas | 16 +- .../PresupuestosCliente_controller.RES | Bin 4748 -> 384 bytes .../uDetallesPresupuestoClienteController.pas | 10 +- .../Data/PresupuestosCliente_data.RES | Bin 384 -> 4748 bytes .../Data/uDataModulePresupuestosCliente.dfm | 50 ++- .../Data/uDataModulePresupuestosCliente.pas | 1 + .../Data/uIDataModulePresupuestosCliente.pas | 2 +- .../schPresupuestosClienteClient_Intf.pas | 278 ++++++++++-- .../schPresupuestosClienteServer_Intf.pas | 330 +++++++++++++-- .../Model/uBizDetallesPresupuestoCliente.pas | 35 ++ .../Servidor/srvPresupuestosCliente_Impl.dfm | 282 +++++++++++- .../Servidor/srvPresupuestosCliente_Impl.pas | 1 + .../Views/PresupuestosCliente_view.dpk | 19 +- .../Views/PresupuestosCliente_view.dproj | 74 ++-- .../Views/uViewConfiguracionCapitulo.dfm | 83 ++++ .../Views/uViewConfiguracionCapitulo.pas | 64 +++ .../Views/uViewConfiguracionDocArmario.dfm | 400 ++++++++++++++---- .../Views/uViewConfiguracionDocArmario.pas | 29 +- .../Views/uViewConfiguracionDocBano.dfm | 274 +++++++++--- .../Views/uViewConfiguracionDocBano.pas | 34 +- .../Views/uViewConfiguracionDocCocina.dfm | 278 +++++++++--- .../Views/uViewConfiguracionDocCocina.pas | 27 +- .../uViewConfiguracionDocElectrodomestico.dfm | 270 +++++++++--- .../uViewConfiguracionDocElectrodomestico.pas | 22 +- .../Views/uViewConfiguracionDocObra.dfm | 271 +++++++++--- .../Views/uViewConfiguracionDocObra.pas | 22 +- Source/Servidor/FactuGES_Server.dpr | 6 +- Source/Servidor/FactuGES_Server.dproj | 2 + Source/Servidor/FactuGES_Server.rc | 2 +- Source/Servidor/FactuGES_Server.res | Bin 23344 -> 23344 bytes 48 files changed, 2739 insertions(+), 642 deletions(-) create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.dfm create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.pas diff --git a/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm b/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm index dd0371b4..cf4f0d87 100644 --- a/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm +++ b/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm @@ -2,8 +2,8 @@ object fConfiguracionEditor: TfConfiguracionEditor Left = 0 Top = 0 Caption = 'Configuraci'#243'n de FactuGES' - ClientHeight = 524 - ClientWidth = 733 + ClientHeight = 655 + ClientWidth = 788 Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText @@ -22,7 +22,7 @@ object fConfiguracionEditor: TfConfiguracionEditor Left = 8 Top = 8 Width = 150 - Height = 466 + Height = 597 Margins.Left = 8 Margins.Top = 8 Margins.Right = 4 @@ -37,6 +37,7 @@ object fConfiguracionEditor: TfConfiguracionEditor OptionsView.NavigationPane.ShowHeader = False OptionsView.NavigationPane.ShowOverflowPanel = False OnLinkClick = dxNavBarLinkClick + ExplicitHeight = 466 object GroupCategorias: TdxNavBarGroup Caption = 'Categor'#237'as' SelectedLinkIndex = -1 @@ -46,18 +47,19 @@ object fConfiguracionEditor: TfConfiguracionEditor end object Panel2: TPanel Left = 0 - Top = 482 - Width = 733 + Top = 613 + Width = 788 Height = 42 Align = alBottom BevelOuter = bvNone TabOrder = 1 - ExplicitWidth = 635 + ExplicitTop = 482 + ExplicitWidth = 733 DesignSize = ( - 733 + 788 42) object bCancelar: TButton - Left = 650 + Left = 705 Top = 10 Width = 75 Height = 25 @@ -66,10 +68,10 @@ object fConfiguracionEditor: TfConfiguracionEditor Caption = '&Cancelar' ModalResult = 2 TabOrder = 0 - ExplicitLeft = 552 + ExplicitLeft = 650 end object bAceptar: TButton - Left = 569 + Left = 624 Top = 10 Width = 75 Height = 25 @@ -77,21 +79,22 @@ object fConfiguracionEditor: TfConfiguracionEditor Caption = '&Aceptar' ModalResult = 1 TabOrder = 1 - ExplicitLeft = 471 + ExplicitLeft = 569 end end object PageControlMain: TPageControl AlignWithMargins = True Left = 166 Top = 6 - Width = 559 - Height = 468 + Width = 614 + Height = 599 Margins.Left = 4 Margins.Top = 6 Margins.Right = 8 Margins.Bottom = 8 Align = alClient TabOrder = 2 - ExplicitWidth = 461 + ExplicitWidth = 559 + ExplicitHeight = 468 end end diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj index b7e460b5..9a77ac9a 100644 --- a/Source/Base/Base.dproj +++ b/Source/Base/Base.dproj @@ -64,6 +64,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + VCL for the Web Design Package for CodeGear RAD Studio CodeGear WebSnap Components @@ -79,54 +121,54 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fConfigurarConexion
diff --git a/Source/Base/Base.res b/Source/Base/Base.res index 8b251f312bcccec5485024f6fe8d80e1cdf25746..1641339fcc482e7e3492d1b45813a86619622c33 100644 GIT binary patch literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP delta 11 ScmeBCZD5|Duvteife`=|>;pCc diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj index 7aa6d916..c40b8dd0 100644 --- a/Source/Cliente/FactuGES.dproj +++ b/Source/Cliente/FactuGES.dproj @@ -46,6 +46,7 @@ DEBUG; True True + 3 Delphi.Personality @@ -53,6 +54,14 @@ FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2480FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.4.8.0FactuGESFactuGES2.4.8.0 + + + + + + + + File C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl not found FactuGES.dprFalse diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index a3fe5b8690e7ff05994d2dc989f265f4a275e568..79878145980e3af8b2a1951001d11f7ee2f01868 100644 GIT binary patch delta 297 zcmYLDJq`g;5dL<`jY1(3Dj|_jIe~_tkZAO>LDq&v(5NUhPVh9=B^28TZr}`#-~#L0 z_iRiu^JdDI?SXX(Ri=hAo08x}?TI_%t?38X;LQ(ItbTWY1CI3KHR6UTQ z^-)eBgG!YE3oUqkojUiT?m)Ni_FgILv3&h=(HM~oh3x|{j0ZVK(!Nr6W6Grxr y>l5K%M4r!gg(+>4FxcKt!=quWoSYO-K6yG+=^|b(uaAhWeZ88~R?Dg5McQBDRyGX) delta 101 zcmbPnkn6&Ju7(!IEldaIDt%yNU{GLSVEF%E0EmGcATVIy;sG;�SRdkLEIYh_Em~ o MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fDialogBase
diff --git a/Source/GUIBase/uEditorBase.pas b/Source/GUIBase/uEditorBase.pas index 19111186..7571a3a4 100644 --- a/Source/GUIBase/uEditorBase.pas +++ b/Source/GUIBase/uEditorBase.pas @@ -169,7 +169,7 @@ begin if AControl is TcxCustomEdit then ActiveEditor:= TcxCustomEdit(AControl); if Assigned(ActiveEditor) then - ActiveEditor.PostEditValue; + ActiveEditor.PostEditValue; end; { diff --git a/Source/Informes/InfContratoCliente.fr3 b/Source/Informes/InfContratoCliente.fr3 index dd2c51ca..72ae8cca 100644 --- a/Source/Informes/InfContratoCliente.fr3 +++ b/Source/Informes/InfContratoCliente.fr3 @@ -1,5 +1,5 @@ - + @@ -13,10 +13,10 @@ - - - - + + + + @@ -79,9 +79,9 @@ - + - + diff --git a/Source/Informes/InfPresupuestoCliente.fr3 b/Source/Informes/InfPresupuestoCliente.fr3 index ec2f164f..b8adaba9 100644 --- a/Source/Informes/InfPresupuestoCliente.fr3 +++ b/Source/Informes/InfPresupuestoCliente.fr3 @@ -1,5 +1,5 @@ - + @@ -11,14 +11,14 @@ - + - - - - + + + + diff --git a/Source/Modulos/Articulos/Controller/uArticulosController.pas b/Source/Modulos/Articulos/Controller/uArticulosController.pas index c4b0d127..85b9c449 100644 --- a/Source/Modulos/Articulos/Controller/uArticulosController.pas +++ b/Source/Modulos/Articulos/Controller/uArticulosController.pas @@ -364,7 +364,7 @@ begin Result.Edit; with Result do begin - ID_EMPRESA := AppFactuGES.EmpresaActiva.ID; + ID_EMPRESA := AppFactuGES.EmpresaActiva.ID; USUARIO := AppFactuGES.UsuarioActivo.UserName; end; @@ -388,13 +388,14 @@ begin raise Exception.Create('Debe indicar al menos la descripción de este artículo.'); // Asegurarse de valores en campos "automáticos" - AArticulo.Edit; + if not AArticulo.DataTable.Editing then + AArticulo.Edit; try - AArticulo.USUARIO := AppFactuGES.UsuarioActivo.UserName; - + AArticulo.USUARIO := AppFactuGES.UsuarioActivo.UserName; Result := True; finally - AArticulo.Post; + if AArticulo.DataTable.Editing then + AArticulo.Post; end; end; @@ -640,12 +641,10 @@ procedure TArticulosController.PonerImagen(AArticulo: IBizArticulo; const AFileN begin if FileExists(AFileName) then begin - DesconectarTabla(AArticulo.DataTable); if not AArticulo.DataTable.Editing then AArticulo.Edit; AArticulo.DataTable.FieldByName(fld_ArticulosIMAGEN).LoadFromFile(AFileName); AArticulo.Post; - ConectarTabla(AArticulo.DataTable); end; end; diff --git a/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm b/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm index f94095a1..22b8afc6 100644 --- a/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm +++ b/Source/Modulos/Articulos/Data/uDataModuleArticulos.dfm @@ -65,6 +65,7 @@ inherited DataModuleArticulos: TDataModuleArticulos Name = 'IMAGEN' DataType = datBlob BlobType = dabtGraphic + LogChanges = False DisplayLabel = 'Foto' end item @@ -188,6 +189,7 @@ inherited DataModuleArticulos: TDataModuleArticulos item Name = 'IMAGEN' DataType = datBlob + LogChanges = False end item Name = 'COMISIONABLE' diff --git a/Source/Modulos/Articulos/Model/schArticulosClient_Intf.pas b/Source/Modulos/Articulos/Model/schArticulosClient_Intf.pas index 315fda80..e992c5f5 100644 --- a/Source/Modulos/Articulos/Model/schArticulosClient_Intf.pas +++ b/Source/Modulos/Articulos/Model/schArticulosClient_Intf.pas @@ -3,19 +3,27 @@ unit schArticulosClient_Intf; interface uses - Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; + Classes, DB, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; const { Data table rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_Articulos = '{F53C14ED-C343-42D8-8A25-6BB3A141FD22}'; - RID_ArticulosParaCliente = '{B1D54489-E268-483E-AF01-6E441FBF6DC0}'; + RID_ExisteImagen = '{17B1E5DC-0839-4F73-A6CE-1E961327B343}'; + RID_Articulos = '{2149AC69-F867-42DA-8AED-68F469111FD5}'; + RID_ArticulosParaCliente = '{E4F0E298-DAFE-4330-B4DD-3C04505B273A}'; { Data table names } + nme_ExisteImagen = 'ExisteImagen'; nme_Articulos = 'Articulos'; nme_ArticulosParaCliente = 'ArticulosParaCliente'; + { ExisteImagen fields } + fld_ExisteImagenID = 'ID'; + + { ExisteImagen field indexes } + idx_ExisteImagenID = 0; + { Articulos fields } fld_ArticulosID = 'ID'; fld_ArticulosID_EMPRESA = 'ID_EMPRESA'; @@ -105,9 +113,44 @@ const idx_ArticulosParaClienteELIMINADO = 19; type + { IExisteImagen } + IExisteImagen = interface(IDAStronglyTypedDataTable) + ['{060DC060-1362-46EB-83A8-00224E4BA4DC}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + end; + + { TExisteImagenDataTableRules } + TExisteImagenDataTableRules = class(TDADataTableRules, IExisteImagen) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + { IArticulos } IArticulos = interface(IDAStronglyTypedDataTable) - ['{7AB1F398-443E-4F30-BBD4-AA8BD49A1C0B}'] + ['{FAB0E582-EA62-4762-84D7-79E31C26F996}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -234,7 +277,7 @@ type end; { TArticulosDataTableRules } - TArticulosDataTableRules = class(TIntfObjectDADataTableRules, IArticulos) + TArticulosDataTableRules = class(TDADataTableRules, IArticulos) private f_IMAGEN: IROStream; procedure IMAGEN_OnChange(Sender: TObject); @@ -370,7 +413,7 @@ type { IArticulosParaCliente } IArticulosParaCliente = interface(IDAStronglyTypedDataTable) - ['{358932C8-FF5E-41C2-B0C9-A4C7423A57B8}'] + ['{A54CB1AD-9DB8-4427-BDC3-A3B9B14280E8}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -497,7 +540,7 @@ type end; { TArticulosParaClienteDataTableRules } - TArticulosParaClienteDataTableRules = class(TIntfObjectDADataTableRules, IArticulosParaCliente) + TArticulosParaClienteDataTableRules = class(TDADataTableRules, IArticulosParaCliente) private f_IMAGEN: IROStream; procedure IMAGEN_OnChange(Sender: TObject); @@ -635,6 +678,39 @@ implementation uses Variants, uROBinaryHelpers; +{ TExisteImagenDataTableRules } +constructor TExisteImagenDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TExisteImagenDataTableRules.Destroy; +begin + inherited; +end; + +function TExisteImagenDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_ExisteImagenID].AsInteger; +end; + +procedure TExisteImagenDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_ExisteImagenID].AsInteger := aValue; +end; + +function TExisteImagenDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ExisteImagenID].IsNull; +end; + +procedure TExisteImagenDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ExisteImagenID].AsVariant := Null; +end; + + { TArticulosDataTableRules } constructor TArticulosDataTableRules.Create(aDataTable: TDADataTable); var @@ -1522,6 +1598,7 @@ end; initialization + RegisterDataTableRules(RID_ExisteImagen, TExisteImagenDataTableRules); RegisterDataTableRules(RID_Articulos, TArticulosDataTableRules); RegisterDataTableRules(RID_ArticulosParaCliente, TArticulosParaClienteDataTableRules); diff --git a/Source/Modulos/Articulos/Model/schArticulosServer_Intf.pas b/Source/Modulos/Articulos/Model/schArticulosServer_Intf.pas index f9318e63..7910c295 100644 --- a/Source/Modulos/Articulos/Model/schArticulosServer_Intf.pas +++ b/Source/Modulos/Articulos/Model/schArticulosServer_Intf.pas @@ -9,13 +9,48 @@ 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_ArticulosDelta = '{EF3BCE84-BF72-4D25-B5C4-02DC99E2C0B2}'; - RID_ArticulosParaClienteDelta = '{E180507C-4070-490C-A07F-A5047BD0F477}'; + RID_ExisteImagenDelta = '{6AAD9495-D1DC-4BD5-8DE8-AFF266BC6501}'; + RID_ArticulosDelta = '{D24AF9A2-3AED-4094-B870-1F3DBA7677F8}'; + RID_ArticulosParaClienteDelta = '{2EAA9D80-3FE0-45F6-A1E2-A725762EE394}'; type + { IExisteImagenDelta } + IExisteImagenDelta = interface(IExisteImagen) + ['{6AAD9495-D1DC-4BD5-8DE8-AFF266BC6501}'] + { Property getters and setters } + function GetOldIDValue : Integer; + + { Properties } + property OldID : Integer read GetOldIDValue; + end; + + { TExisteImagenBusinessProcessorRules } + TExisteImagenBusinessProcessorRules = class(TDABusinessProcessorRules, IExisteImagen, IExisteImagenDelta) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + { IArticulosDelta } IArticulosDelta = interface(IArticulos) - ['{EF3BCE84-BF72-4D25-B5C4-02DC99E2C0B2}'] + ['{D24AF9A2-3AED-4094-B870-1F3DBA7677F8}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_EMPRESAValue : Integer; @@ -278,7 +313,7 @@ type { IArticulosParaClienteDelta } IArticulosParaClienteDelta = interface(IArticulosParaCliente) - ['{E180507C-4070-490C-A07F-A5047BD0F477}'] + ['{2EAA9D80-3FE0-45F6-A1E2-A725762EE394}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_EMPRESAValue : Integer; @@ -544,6 +579,49 @@ implementation uses Variants, uROBinaryHelpers, uDAInterfaces; +{ TExisteImagenBusinessProcessorRules } +constructor TExisteImagenBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TExisteImagenBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TExisteImagenBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ExisteImagenID]; +end; + +function TExisteImagenBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ExisteImagenID]); +end; + +function TExisteImagenBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ExisteImagenID]; +end; + +function TExisteImagenBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ExisteImagenID]); +end; + +procedure TExisteImagenBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ExisteImagenID] := aValue; +end; + +procedure TExisteImagenBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ExisteImagenID] := Null; +end; + + { TArticulosBusinessProcessorRules } constructor TArticulosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); var @@ -1833,6 +1911,7 @@ end; initialization + RegisterBusinessProcessorRules(RID_ExisteImagenDelta, TExisteImagenBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ArticulosDelta, TArticulosBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ArticulosParaClienteDelta, TArticulosParaClienteBusinessProcessorRules); diff --git a/Source/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm b/Source/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm index 1dc6eaaa..c10f5d74 100644 --- a/Source/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm +++ b/Source/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm @@ -273,6 +273,7 @@ object srvArticulos: TsrvArticulos Name = 'IMAGEN' DataType = datBlob BlobType = dabtGraphic + LogChanges = False DisplayLabel = 'Foto' end item @@ -485,6 +486,7 @@ object srvArticulos: TsrvArticulos item Name = 'IMAGEN' DataType = datBlob + LogChanges = False end item Name = 'COMISIONABLE' diff --git a/Source/Modulos/Articulos/Views/Articulos_view.RES b/Source/Modulos/Articulos/Views/Articulos_view.RES index 8b251f312bcccec5485024f6fe8d80e1cdf25746..ea6f55be3be373bb77635abcf5cb62b4a1d7e3e8 100644 GIT binary patch literal 5056 zcmbW5&x;&Y5XWnifD(f4!IPI+L`3!=E9BmaF%VEA#@TDLXpF&R6XJUC)cc=I4kFSA z{{!hg%bp}hVRP_qjvmDJ`>A@>-7}euyEfF+`%$mH-*3IwZ-y~5+miKtn3_w^Pn$V^ zQ861nx4C)wN(Q~H#+K|o*@m~&(3=1I%Llk7>S*pvE7;Yjz^+ljNYba;|&8!P>=GYp<9J^QiRC`-*du(Wb zBJI+RemE@Tm2dSSKL$269_p-ia&WJ{$B|EYy#Bt1`fm?B(CB-l8nlXqgY!6fUOzP@ zr|Te|e4cZxgJWuLF8<`}dughP69?9a%ha4}r`jtX-7UCl^he&nV;_S<)Ya!2FlEJu zrr{t12%dXkNqpywX{@?Eb_MKs@29XRNI;2D%DxW zo|xv^jnf#kFIDZr^e=W==PW{#^6Ao{deqzuxId;ujOZ~3;otiwSzBXu3^t3 z&$C~D3=Umz@OQRR9+}nP>x>=u115dAI{rd2#Mbgv81-@e%IA6)a8SDwHm3Di`~F1x z)jhG~04Fd5o4f^Iah!WFIS0|E#)aohzS6onIG_;>-~Ytz3J0A}=DenTZ*cIo-Ves9 zp>qHmo5lV+rntk2He9_1!t%2yZsF;l)>iGc4jkU$0bBWEPmBKKP>uSjxhXIDsSodT z@EG|gFZa>|hHF!PaN};FzIxxlpPKT;87{i(!eu7T%H?}r^yeP=K2c}If`cyKd-3DW z_4ib`jDt-MZ?C~;z1O=EKN(!YbpFJR_c`u>(C=ph9O_Y*Jz5Z>`Zs7T9Mn$y@ay$^ z{gulxYxXwGq@TIGbG$~Hi*qk8?9|WMkNweF@MU18F;AQKZ>jcWAL86`f59r^Yh;+XfGU10gV*5=*FT)q#qz2B_Ik28(#vUlW{{>1m(1wXK3zHQ3+RoHfz^$cuqg(^F;eqz6WUMUE^m$ z9R1u2H_t9ue%}<_JcD5KB$svgjBysd-ql#|toxF$&>h1Qc)Vw6j~u{SeHg>my$i{SJtD^MnJV!{AK!ZgN9Q4bN2bs7?m1Qo zsLwc-c&GZ4_%7jWppm+9C(?(bpCye?f6Mv)ml~{r9)<=EoH5SYSxm8xsWZv%2MjL$ zd)R%{gxqI&lEaJ6!*jggJMcIz?<5?~hn@VA1Kzcrp$;C`m0CzQdy{!G?|FT$$5W3N zaydTsdE#>2dGSt*&wOX~r{!54?~lxS4gM|rOZH6mRCZMCP#!z)bEv-^up_gJ*i*BY zl>1d-%!E}5v+s{C_OF@Qj;!xrv5)P2yJ4TmKCqke`Aq-U;NJ}WpRu*&|7!3r$c7zU zF#m_6?>Cia!`F$75hlhW6Znuj?mK*AD#yu zyD#i}D-7Op{Esw$$7f;tP&`q4$G+Cec!K8`_qihW>`Se?FaOBC5tDo(_GZaJ)xb^O z^u`KAjXqWE17-V8+7DJ3nreye<(O6VtJ+_8T~T|`s6jHk=0ta$cd{CH)9g(@388Rb PtL`asx)+zP{Bh}DvbcG> delta 64 zcmX@0-oQLTfyse!vYwzEi1HKk5Mg0pWIzQA7$&b0RAQ=On0!u9Y_f@v!DJm_lgTy0 FE&z5P3~vAc diff --git a/Source/Modulos/Articulos/Views/Articulos_view.dproj b/Source/Modulos/Articulos/Views/Articulos_view.dproj index 8eb5a69e..aa976d2f 100644 --- a/Source/Modulos/Articulos/Views/Articulos_view.dproj +++ b/Source/Modulos/Articulos/Views/Articulos_view.dproj @@ -42,6 +42,7 @@ ..\..\..\Lib;..\..\Lib ..\..\..\Lib;..\..\Lib ..\..\..\Lib;..\..\Lib + 3 Delphi.Personality @@ -54,11 +55,11 @@ MainSource - - - - - + + + + +
fEditorArticulo
@@ -89,7 +90,7 @@ diff --git a/Source/Modulos/Articulos/Views/uEditorArticulo.dfm b/Source/Modulos/Articulos/Views/uEditorArticulo.dfm index 7129d576..d31a82d5 100644 --- a/Source/Modulos/Articulos/Views/uEditorArticulo.dfm +++ b/Source/Modulos/Articulos/Views/uEditorArticulo.dfm @@ -119,10 +119,7 @@ inherited fEditorArticulo: TfEditorArticulo end inherited PnlComentario: TPanel Width = 624 - inherited lbComentario: TLabel - Width = 614 - Height = 25 - end + ExplicitWidth = 624 end inherited EditorActionList: TActionList Top = 128 diff --git a/Source/Modulos/Articulos/Views/uViewArticulo.dfm b/Source/Modulos/Articulos/Views/uViewArticulo.dfm index c869fff5..f85aa0ba 100644 --- a/Source/Modulos/Articulos/Views/uViewArticulo.dfm +++ b/Source/Modulos/Articulos/Views/uViewArticulo.dfm @@ -1,5 +1,5 @@ inherited frViewArticulo: TfrViewArticulo - Width = 451 + Width = 990 Height = 304 Align = alClient OnCreate = CustomViewCreate @@ -10,18 +10,19 @@ inherited frViewArticulo: TfrViewArticulo object dxLayoutControlArticulo: TdxLayoutControl Left = 0 Top = 0 - Width = 451 + Width = 990 Height = 393 Align = alTop ParentBackground = True TabOrder = 0 TabStop = False AutoContentSizes = [acsWidth] + ExplicitWidth = 451 DesignSize = ( - 451 + 990 393) object PngSpeedButton2: TPngSpeedButton - Left = 546 + Left = 945 Top = 28 Width = 23 Height = 22 @@ -48,7 +49,7 @@ inherited frViewArticulo: TfrViewArticulo PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled] end object PngSpeedButton1: TPngSpeedButton - Left = 546 + Left = 945 Top = 56 Width = 23 Height = 22 @@ -121,10 +122,9 @@ inherited frViewArticulo: TfrViewArticulo Width = 144 end object eImagen: TcxImage - Left = 409 + Left = 678 Top = 28 Properties.GraphicClassName = 'TJPEGImage' - Properties.ImmediatePost = True Properties.PopupMenuLayout.MenuItems = [] Properties.Stretch = True Style.BorderColor = clWindowFrame @@ -167,7 +167,7 @@ inherited frViewArticulo: TfrViewArticulo Width = 70 end inline frViewDatosYSeleccionProveedor1: TfrViewDatosYSeleccionProveedor - Left = 219 + Left = 618 Top = 166 Width = 350 Height = 202 @@ -179,7 +179,7 @@ inherited frViewArticulo: TfrViewArticulo ParentFont = False TabOrder = 12 ReadOnly = False - ExplicitLeft = 219 + ExplicitLeft = 618 ExplicitTop = 166 inherited dxLayoutControl1: TdxLayoutControl inherited edtNIFCIF: TcxDBTextEdit @@ -306,7 +306,7 @@ inherited frViewArticulo: TfrViewArticulo Width = 86 end object cbNoInventariable: TcxDBCheckBox - Left = 242 + Left = 406 Top = 109 Caption = 'Art'#237'culo no inventariable' DataBinding.DataField = 'INVENTARIABLE' diff --git a/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas b/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas index 9030ac1a..9595186e 100644 --- a/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas +++ b/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas @@ -3,7 +3,7 @@ unit schContratosClienteClient_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; + Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; const { Data table rules ids @@ -253,7 +253,7 @@ type end; { TValoresDataTableRules } - TValoresDataTableRules = class(TDADataTableRules, IValores) + TValoresDataTableRules = class(TIntfObjectDADataTableRules, IValores) private protected { Property getters and setters } @@ -312,7 +312,7 @@ type end; { TPropiedadesDataTableRules } - TPropiedadesDataTableRules = class(TDADataTableRules, IPropiedades) + TPropiedadesDataTableRules = class(TIntfObjectDADataTableRules, IPropiedades) private protected { Property getters and setters } @@ -359,7 +359,7 @@ type end; { TListaAnosContratosDataTableRules } - TListaAnosContratosDataTableRules = class(TDADataTableRules, IListaAnosContratos) + TListaAnosContratosDataTableRules = class(TIntfObjectDADataTableRules, IListaAnosContratos) private protected { Property getters and setters } @@ -454,7 +454,7 @@ type end; { TContratosClienteBeneficiosDataTableRules } - TContratosClienteBeneficiosDataTableRules = class(TDADataTableRules, IContratosClienteBeneficios) + TContratosClienteBeneficiosDataTableRules = class(TIntfObjectDADataTableRules, IContratosClienteBeneficios) private protected { Property getters and setters } @@ -809,7 +809,7 @@ type end; { TContratosClienteDataTableRules } - TContratosClienteDataTableRules = class(TDADataTableRules, IContratosCliente) + TContratosClienteDataTableRules = class(TIntfObjectDADataTableRules, IContratosCliente) private f_FORMA_PAGO: IROStrings; f_PLAZO_ENTREGA: IROStrings; @@ -1145,7 +1145,7 @@ type end; { TTiposCapitulosDataTableRules } - TTiposCapitulosDataTableRules = class(TDADataTableRules, ITiposCapitulos) + TTiposCapitulosDataTableRules = class(TIntfObjectDADataTableRules, ITiposCapitulos) private protected { Property getters and setters } @@ -1300,7 +1300,7 @@ type end; { TContratosCliente_DetallesDataTableRules } - TContratosCliente_DetallesDataTableRules = class(TDADataTableRules, IContratosCliente_Detalles) + TContratosCliente_DetallesDataTableRules = class(TIntfObjectDADataTableRules, IContratosCliente_Detalles) private protected { Property getters and setters } diff --git a/Source/Modulos/Presupuestos de cliente/Controller/PresupuestosCliente_controller.RES b/Source/Modulos/Presupuestos de cliente/Controller/PresupuestosCliente_controller.RES index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas b/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas index 5879cb57..fff840a3 100644 --- a/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas +++ b/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas @@ -17,6 +17,7 @@ type function DarPropiedades: IBizPropiedades; procedure AnadirCapitulo (const Tipo: String; const Descripcion: String; const Descuento:Boolean; ADetalles: IDAStronglyTypedDataTable); + function BuscarCapitulo (const Tipo: String): IBizCapitulo; procedure SetTipoArticulo(ADetalles: IDAStronglyTypedDataTable; ATipo: String); procedure SetVisible(ADetalles: IDAStronglyTypedDataTable;const AVisible: Integer;const Orden: Integer); //1Ascendente/0Descendente end; @@ -48,6 +49,8 @@ type function DarPropiedades: IBizPropiedades; procedure AnadirCapitulo (const Tipo: String; const Descripcion: String; const Descuento:Boolean; ADetalles: IDAStronglyTypedDataTable); + function BuscarCapitulo (const Tipo: String): IBizCapitulo; + //Se sobre escribe para hacer otro recorrido y rellenar el tipo_articulo a todos los conceptos de los capitulos procedure ValidarDetalles(ADataTable: IDAStronglyTypedDataTable); override; @@ -130,7 +133,7 @@ begin ADetalles.DataTable.Edit; ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo; - ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesPROPIEDAD).AsString := ACapitulo.PROPIEDAD; + ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesPROPIEDAD).AsString := ACapitulo.CONCEPTO; Next; until EOF; end; @@ -159,6 +162,11 @@ begin FArticulosController := TArticulosPresupuestoClienteController.Create; end; +function TDetallesPresupuestoClienteController.BuscarCapitulo(const Tipo: String): IBizCapitulo; +begin + Result := FDataModule.GetCapitulo(Tipo); +end; + function TDetallesPresupuestoClienteController.PedirDescuento: Variant; var AEditor: IEditorAsignarDescuento; diff --git a/Source/Modulos/Presupuestos de cliente/Data/PresupuestosCliente_data.RES b/Source/Modulos/Presupuestos de cliente/Data/PresupuestosCliente_data.RES index 8b251f312bcccec5485024f6fe8d80e1cdf25746..1641339fcc482e7e3492d1b45813a86619622c33 100644 GIT binary patch literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP delta 11 ScmeBCZD5|Duvteife`=|>;pCc diff --git a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm index 98fa4117..b9559491 100644 --- a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm +++ b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm @@ -470,28 +470,74 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente Fields = < item Name = 'ID' - DataType = datInteger + DataType = datAutoInc + GeneratorName = 'GEN_PRESUPUESTOS_CLIENTE_CAPITU' Required = True + DictionaryEntry = 'CapitulosPresupuesto_ID' InPrimaryKey = True end item Name = 'POSICION' DataType = datInteger + DisplayLabel = 'CapitulosPresupuesto_POSICION' + DictionaryEntry = 'CapitulosPresupuesto_POSICION' end item Name = 'TIPO_DETALLE' DataType = datString Size = 10 + DisplayLabel = 'CapitulosPresupuesto_TIPO_DETALLE' + DictionaryEntry = 'CapitulosPresupuesto_TIPO_DETALLE' end item Name = 'TIPO_ARTICULO' DataType = datString Size = 2 + DisplayLabel = 'CapitulosPresupuesto_TIPO_ARTICULO' + DictionaryEntry = 'CapitulosPresupuesto_TIPO_ARTICULO' end item - Name = 'PROPIEDAD' + Name = 'CONCEPTO' DataType = datString Size = 255 + DisplayLabel = 'CapitulosPresupuesto_CONCEPTO' + DictionaryEntry = 'CapitulosPresupuesto_CONCEPTO' + end + item + Name = 'CANTIDAD' + DataType = datInteger + DisplayLabel = 'CapitulosPresupuesto_CANTIDAD' + DictionaryEntry = 'CapitulosPresupuesto_CANTIDAD' + end + item + Name = 'IMPORTE_UNIDAD' + DataType = datInteger + DisplayLabel = 'CapitulosPresupuesto_IMPORTE_UNIDAD' + DictionaryEntry = 'CapitulosPresupuesto_IMPORTE_UNIDAD' + end + item + Name = 'IMPORTE_TOTAL' + DataType = datInteger + DisplayLabel = 'CapitulosPresupuesto_IMPORTE_TOTAL' + DictionaryEntry = 'CapitulosPresupuesto_IMPORTE_TOTAL' + end + item + Name = 'DESCUENTO' + DataType = datInteger + DisplayLabel = 'CapitulosPresupuesto_DESCUENTO' + DictionaryEntry = 'CapitulosPresupuesto_DESCUENTO' + end + item + Name = 'IMPORTE_PORTE' + DataType = datInteger + DisplayLabel = 'CapitulosPresupuesto_IMPORTE_PORTE' + DictionaryEntry = 'CapitulosPresupuesto_IMPORTE_PORTE' + end + item + Name = 'VISIBLE' + DataType = datInteger + DisplayLabel = 'CapitulosPresupuesto_VISIBLE' + DictionaryEntry = 'CapitulosPresupuesto_VISIBLE' end> Params = <> StreamingOptions = [soDisableEventsWhileStreaming] diff --git a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.pas b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.pas index fabbb521..509d8b8d 100644 --- a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.pas +++ b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.pas @@ -192,6 +192,7 @@ begin ACapitulo.BusinessRulesID := BIZ_CLIENT_CAPITULOS; Result := (ACapitulo as IBizCapitulo); + Result.Tipo := TIPO_ARTICULO; with Result.DataTable.DynamicWhere do begin diff --git a/Source/Modulos/Presupuestos de cliente/Model/Data/uIDataModulePresupuestosCliente.pas b/Source/Modulos/Presupuestos de cliente/Model/Data/uIDataModulePresupuestosCliente.pas index e9738651..f3e20467 100644 --- a/Source/Modulos/Presupuestos de cliente/Model/Data/uIDataModulePresupuestosCliente.pas +++ b/Source/Modulos/Presupuestos de cliente/Model/Data/uIDataModulePresupuestosCliente.pas @@ -15,7 +15,7 @@ type function GetItem(const ID : Integer) : IBizPresupuestoCliente; function NewItem : IBizPresupuestoCliente; function GetPropiedades : IBizPropiedades; - function GetCapitulo(const TIPO_ARTICULO : String) : IBizCapitulo; + function GetCapitulo(const TIPO_ARTICULO : String) : IBizCapitulo; end; implementation diff --git a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas index eab6bb8c..3f2b16e9 100644 --- a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas +++ b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteClient_Intf.pas @@ -9,12 +9,12 @@ 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_Valores = '{3F54B7A7-2485-451E-A0A1-8097FCFE8FF3}'; - RID_Propiedades = '{33469FFB-91A9-4C08-A5D2-F0EE66507E4D}'; - RID_ListaAnosPresupuestos = '{2F66482F-A1D1-4C81-B38C-595BEF96A735}'; - RID_PresupuestosCliente = '{3DDEE7F7-DDE9-4B90-BFB5-176B2D61F96A}'; - RID_CapitulosPresupuesto = '{401C302B-DE1C-46C9-824C-3AD1AC66AA1B}'; - RID_PresupuestosCliente_Detalles = '{9D17FCE3-3455-4F90-8260-7319FBD352EB}'; + RID_Valores = '{6348B4C1-5922-413E-9A20-13FACB52DC4D}'; + RID_Propiedades = '{FA67BDBC-F85D-4E3D-B403-7AC43AF007F3}'; + RID_ListaAnosPresupuestos = '{9CE1B82B-66E8-498E-9559-105748B1B8D0}'; + RID_PresupuestosCliente = '{13CE35AE-8D8D-488C-8C8D-70063B48C2C5}'; + RID_CapitulosPresupuesto = '{25C8A50F-E9A5-478E-A825-DF6332C457C2}'; + RID_PresupuestosCliente_Detalles = '{128B9C7B-1A51-4571-8948-A8D1201FF20A}'; { Data table names } nme_Valores = 'Valores'; @@ -143,14 +143,26 @@ const fld_CapitulosPresupuestoPOSICION = 'POSICION'; fld_CapitulosPresupuestoTIPO_DETALLE = 'TIPO_DETALLE'; fld_CapitulosPresupuestoTIPO_ARTICULO = 'TIPO_ARTICULO'; - fld_CapitulosPresupuestoPROPIEDAD = 'PROPIEDAD'; + fld_CapitulosPresupuestoCONCEPTO = 'CONCEPTO'; + fld_CapitulosPresupuestoCANTIDAD = 'CANTIDAD'; + fld_CapitulosPresupuestoIMPORTE_UNIDAD = 'IMPORTE_UNIDAD'; + fld_CapitulosPresupuestoIMPORTE_TOTAL = 'IMPORTE_TOTAL'; + fld_CapitulosPresupuestoDESCUENTO = 'DESCUENTO'; + fld_CapitulosPresupuestoIMPORTE_PORTE = 'IMPORTE_PORTE'; + fld_CapitulosPresupuestoVISIBLE = 'VISIBLE'; { CapitulosPresupuesto field indexes } idx_CapitulosPresupuestoID = 0; idx_CapitulosPresupuestoPOSICION = 1; idx_CapitulosPresupuestoTIPO_DETALLE = 2; idx_CapitulosPresupuestoTIPO_ARTICULO = 3; - idx_CapitulosPresupuestoPROPIEDAD = 4; + idx_CapitulosPresupuestoCONCEPTO = 4; + idx_CapitulosPresupuestoCANTIDAD = 5; + idx_CapitulosPresupuestoIMPORTE_UNIDAD = 6; + idx_CapitulosPresupuestoIMPORTE_TOTAL = 7; + idx_CapitulosPresupuestoDESCUENTO = 8; + idx_CapitulosPresupuestoIMPORTE_PORTE = 9; + idx_CapitulosPresupuestoVISIBLE = 10; { PresupuestosCliente_Detalles fields } fld_PresupuestosCliente_DetallesID = 'ID'; @@ -191,7 +203,7 @@ const type { IValores } IValores = interface(IDAStronglyTypedDataTable) - ['{7233C9EC-5F96-4CD6-AECB-A19F749396BD}'] + ['{AA0C40BF-2339-4326-9A5E-EEE260CADC74}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -274,7 +286,7 @@ type { IPropiedades } IPropiedades = interface(IDAStronglyTypedDataTable) - ['{31A40577-FC3A-475C-A49B-B00F60EA59D4}'] + ['{EA75AD60-D801-4B85-B0EF-6ED926A30B2A}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -321,7 +333,7 @@ type { IListaAnosPresupuestos } IListaAnosPresupuestos = interface(IDAStronglyTypedDataTable) - ['{63A6C637-5FDF-4677-9761-D8002D4D9EBA}'] + ['{282E6250-DA69-4658-A522-A54C6A1705CE}'] { Property getters and setters } function GetANOValue: String; procedure SetANOValue(const aValue: String); @@ -356,7 +368,7 @@ type { IPresupuestosCliente } IPresupuestosCliente = interface(IDAStronglyTypedDataTable) - ['{9F8F0789-D6FD-4E4C-97B1-1EEAEFA900F2}'] + ['{D998C033-F1BC-4A07-B2ED-AF2753438192}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -871,7 +883,7 @@ type { ICapitulosPresupuesto } ICapitulosPresupuesto = interface(IDAStronglyTypedDataTable) - ['{4AD23244-E63C-48A2-9F9F-662B3D41785B}'] + ['{311247FA-7E4E-4B5A-AC81-6E596ADD47B8}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -889,10 +901,34 @@ type procedure SetTIPO_ARTICULOValue(const aValue: String); function GetTIPO_ARTICULOIsNull: Boolean; procedure SetTIPO_ARTICULOIsNull(const aValue: Boolean); - function GetPROPIEDADValue: String; - procedure SetPROPIEDADValue(const aValue: String); - function GetPROPIEDADIsNull: Boolean; - procedure SetPROPIEDADIsNull(const aValue: Boolean); + function GetCONCEPTOValue: String; + procedure SetCONCEPTOValue(const aValue: String); + function GetCONCEPTOIsNull: Boolean; + procedure SetCONCEPTOIsNull(const aValue: Boolean); + function GetCANTIDADValue: Integer; + procedure SetCANTIDADValue(const aValue: Integer); + function GetCANTIDADIsNull: Boolean; + procedure SetCANTIDADIsNull(const aValue: Boolean); + function GetIMPORTE_UNIDADValue: Integer; + procedure SetIMPORTE_UNIDADValue(const aValue: Integer); + function GetIMPORTE_UNIDADIsNull: Boolean; + procedure SetIMPORTE_UNIDADIsNull(const aValue: Boolean); + function GetIMPORTE_TOTALValue: Integer; + procedure SetIMPORTE_TOTALValue(const aValue: Integer); + function GetIMPORTE_TOTALIsNull: Boolean; + procedure SetIMPORTE_TOTALIsNull(const aValue: Boolean); + function GetDESCUENTOValue: Integer; + procedure SetDESCUENTOValue(const aValue: Integer); + function GetDESCUENTOIsNull: Boolean; + procedure SetDESCUENTOIsNull(const aValue: Boolean); + function GetIMPORTE_PORTEValue: Integer; + procedure SetIMPORTE_PORTEValue(const aValue: Integer); + function GetIMPORTE_PORTEIsNull: Boolean; + procedure SetIMPORTE_PORTEIsNull(const aValue: Boolean); + function GetVISIBLEValue: Integer; + procedure SetVISIBLEValue(const aValue: Integer); + function GetVISIBLEIsNull: Boolean; + procedure SetVISIBLEIsNull(const aValue: Boolean); { Properties } @@ -904,8 +940,20 @@ type property TIPO_DETALLEIsNull: Boolean read GetTIPO_DETALLEIsNull write SetTIPO_DETALLEIsNull; property TIPO_ARTICULO: String read GetTIPO_ARTICULOValue write SetTIPO_ARTICULOValue; property TIPO_ARTICULOIsNull: Boolean read GetTIPO_ARTICULOIsNull write SetTIPO_ARTICULOIsNull; - property PROPIEDAD: String read GetPROPIEDADValue write SetPROPIEDADValue; - property PROPIEDADIsNull: Boolean read GetPROPIEDADIsNull write SetPROPIEDADIsNull; + property CONCEPTO: String read GetCONCEPTOValue write SetCONCEPTOValue; + property CONCEPTOIsNull: Boolean read GetCONCEPTOIsNull write SetCONCEPTOIsNull; + property CANTIDAD: Integer read GetCANTIDADValue write SetCANTIDADValue; + property CANTIDADIsNull: Boolean read GetCANTIDADIsNull write SetCANTIDADIsNull; + property IMPORTE_UNIDAD: Integer read GetIMPORTE_UNIDADValue write SetIMPORTE_UNIDADValue; + property IMPORTE_UNIDADIsNull: Boolean read GetIMPORTE_UNIDADIsNull write SetIMPORTE_UNIDADIsNull; + property IMPORTE_TOTAL: Integer read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue; + property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; + property DESCUENTO: Integer read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull: Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; + property IMPORTE_PORTE: Integer read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue; + property IMPORTE_PORTEIsNull: Boolean read GetIMPORTE_PORTEIsNull write SetIMPORTE_PORTEIsNull; + property VISIBLE: Integer read GetVISIBLEValue write SetVISIBLEValue; + property VISIBLEIsNull: Boolean read GetVISIBLEIsNull write SetVISIBLEIsNull; end; { TCapitulosPresupuestoDataTableRules } @@ -929,10 +977,34 @@ type procedure SetTIPO_ARTICULOValue(const aValue: String); virtual; function GetTIPO_ARTICULOIsNull: Boolean; virtual; procedure SetTIPO_ARTICULOIsNull(const aValue: Boolean); virtual; - function GetPROPIEDADValue: String; virtual; - procedure SetPROPIEDADValue(const aValue: String); virtual; - function GetPROPIEDADIsNull: Boolean; virtual; - procedure SetPROPIEDADIsNull(const aValue: Boolean); virtual; + function GetCONCEPTOValue: String; virtual; + procedure SetCONCEPTOValue(const aValue: String); virtual; + function GetCONCEPTOIsNull: Boolean; virtual; + procedure SetCONCEPTOIsNull(const aValue: Boolean); virtual; + function GetCANTIDADValue: Integer; virtual; + procedure SetCANTIDADValue(const aValue: Integer); virtual; + function GetCANTIDADIsNull: Boolean; virtual; + procedure SetCANTIDADIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_UNIDADValue: Integer; virtual; + procedure SetIMPORTE_UNIDADValue(const aValue: Integer); virtual; + function GetIMPORTE_UNIDADIsNull: Boolean; virtual; + procedure SetIMPORTE_UNIDADIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_TOTALValue: Integer; virtual; + procedure SetIMPORTE_TOTALValue(const aValue: Integer); virtual; + function GetIMPORTE_TOTALIsNull: Boolean; virtual; + procedure SetIMPORTE_TOTALIsNull(const aValue: Boolean); virtual; + function GetDESCUENTOValue: Integer; virtual; + procedure SetDESCUENTOValue(const aValue: Integer); virtual; + function GetDESCUENTOIsNull: Boolean; virtual; + procedure SetDESCUENTOIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_PORTEValue: Integer; virtual; + procedure SetIMPORTE_PORTEValue(const aValue: Integer); virtual; + function GetIMPORTE_PORTEIsNull: Boolean; virtual; + procedure SetIMPORTE_PORTEIsNull(const aValue: Boolean); virtual; + function GetVISIBLEValue: Integer; virtual; + procedure SetVISIBLEValue(const aValue: Integer); virtual; + function GetVISIBLEIsNull: Boolean; virtual; + procedure SetVISIBLEIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; @@ -943,8 +1015,20 @@ type property TIPO_DETALLEIsNull: Boolean read GetTIPO_DETALLEIsNull write SetTIPO_DETALLEIsNull; property TIPO_ARTICULO: String read GetTIPO_ARTICULOValue write SetTIPO_ARTICULOValue; property TIPO_ARTICULOIsNull: Boolean read GetTIPO_ARTICULOIsNull write SetTIPO_ARTICULOIsNull; - property PROPIEDAD: String read GetPROPIEDADValue write SetPROPIEDADValue; - property PROPIEDADIsNull: Boolean read GetPROPIEDADIsNull write SetPROPIEDADIsNull; + property CONCEPTO: String read GetCONCEPTOValue write SetCONCEPTOValue; + property CONCEPTOIsNull: Boolean read GetCONCEPTOIsNull write SetCONCEPTOIsNull; + property CANTIDAD: Integer read GetCANTIDADValue write SetCANTIDADValue; + property CANTIDADIsNull: Boolean read GetCANTIDADIsNull write SetCANTIDADIsNull; + property IMPORTE_UNIDAD: Integer read GetIMPORTE_UNIDADValue write SetIMPORTE_UNIDADValue; + property IMPORTE_UNIDADIsNull: Boolean read GetIMPORTE_UNIDADIsNull write SetIMPORTE_UNIDADIsNull; + property IMPORTE_TOTAL: Integer read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue; + property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; + property DESCUENTO: Integer read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull: Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; + property IMPORTE_PORTE: Integer read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue; + property IMPORTE_PORTEIsNull: Boolean read GetIMPORTE_PORTEIsNull write SetIMPORTE_PORTEIsNull; + property VISIBLE: Integer read GetVISIBLEValue write SetVISIBLEValue; + property VISIBLEIsNull: Boolean read GetVISIBLEIsNull write SetVISIBLEIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -954,7 +1038,7 @@ type { IPresupuestosCliente_Detalles } IPresupuestosCliente_Detalles = interface(IDAStronglyTypedDataTable) - ['{77CBC642-6303-467E-85B6-BE1CECD5ECFC}'] + ['{1C2C32E6-33C3-4D21-A13B-AD25078DC360}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -2365,25 +2449,151 @@ begin DataTable.Fields[idx_CapitulosPresupuestoTIPO_ARTICULO].AsVariant := Null; end; -function TCapitulosPresupuestoDataTableRules.GetPROPIEDADValue: String; +function TCapitulosPresupuestoDataTableRules.GetCONCEPTOValue: String; begin - result := DataTable.Fields[idx_CapitulosPresupuestoPROPIEDAD].AsString; + result := DataTable.Fields[idx_CapitulosPresupuestoCONCEPTO].AsString; end; -procedure TCapitulosPresupuestoDataTableRules.SetPROPIEDADValue(const aValue: String); +procedure TCapitulosPresupuestoDataTableRules.SetCONCEPTOValue(const aValue: String); begin - DataTable.Fields[idx_CapitulosPresupuestoPROPIEDAD].AsString := aValue; + DataTable.Fields[idx_CapitulosPresupuestoCONCEPTO].AsString := aValue; end; -function TCapitulosPresupuestoDataTableRules.GetPROPIEDADIsNull: boolean; +function TCapitulosPresupuestoDataTableRules.GetCONCEPTOIsNull: boolean; begin - result := DataTable.Fields[idx_CapitulosPresupuestoPROPIEDAD].IsNull; + result := DataTable.Fields[idx_CapitulosPresupuestoCONCEPTO].IsNull; end; -procedure TCapitulosPresupuestoDataTableRules.SetPROPIEDADIsNull(const aValue: Boolean); +procedure TCapitulosPresupuestoDataTableRules.SetCONCEPTOIsNull(const aValue: Boolean); begin if aValue then - DataTable.Fields[idx_CapitulosPresupuestoPROPIEDAD].AsVariant := Null; + DataTable.Fields[idx_CapitulosPresupuestoCONCEPTO].AsVariant := Null; +end; + +function TCapitulosPresupuestoDataTableRules.GetCANTIDADValue: Integer; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoCANTIDAD].AsInteger; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetCANTIDADValue(const aValue: Integer); +begin + DataTable.Fields[idx_CapitulosPresupuestoCANTIDAD].AsInteger := aValue; +end; + +function TCapitulosPresupuestoDataTableRules.GetCANTIDADIsNull: boolean; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoCANTIDAD].IsNull; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetCANTIDADIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_CapitulosPresupuestoCANTIDAD].AsVariant := Null; +end; + +function TCapitulosPresupuestoDataTableRules.GetIMPORTE_UNIDADValue: Integer; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_UNIDAD].AsInteger; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetIMPORTE_UNIDADValue(const aValue: Integer); +begin + DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_UNIDAD].AsInteger := aValue; +end; + +function TCapitulosPresupuestoDataTableRules.GetIMPORTE_UNIDADIsNull: boolean; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_UNIDAD].IsNull; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetIMPORTE_UNIDADIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_UNIDAD].AsVariant := Null; +end; + +function TCapitulosPresupuestoDataTableRules.GetIMPORTE_TOTALValue: Integer; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_TOTAL].AsInteger; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetIMPORTE_TOTALValue(const aValue: Integer); +begin + DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_TOTAL].AsInteger := aValue; +end; + +function TCapitulosPresupuestoDataTableRules.GetIMPORTE_TOTALIsNull: boolean; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_TOTAL].IsNull; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetIMPORTE_TOTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_TOTAL].AsVariant := Null; +end; + +function TCapitulosPresupuestoDataTableRules.GetDESCUENTOValue: Integer; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoDESCUENTO].AsInteger; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetDESCUENTOValue(const aValue: Integer); +begin + DataTable.Fields[idx_CapitulosPresupuestoDESCUENTO].AsInteger := aValue; +end; + +function TCapitulosPresupuestoDataTableRules.GetDESCUENTOIsNull: boolean; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoDESCUENTO].IsNull; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetDESCUENTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_CapitulosPresupuestoDESCUENTO].AsVariant := Null; +end; + +function TCapitulosPresupuestoDataTableRules.GetIMPORTE_PORTEValue: Integer; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_PORTE].AsInteger; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetIMPORTE_PORTEValue(const aValue: Integer); +begin + DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_PORTE].AsInteger := aValue; +end; + +function TCapitulosPresupuestoDataTableRules.GetIMPORTE_PORTEIsNull: boolean; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_PORTE].IsNull; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetIMPORTE_PORTEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_CapitulosPresupuestoIMPORTE_PORTE].AsVariant := Null; +end; + +function TCapitulosPresupuestoDataTableRules.GetVISIBLEValue: Integer; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoVISIBLE].AsInteger; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetVISIBLEValue(const aValue: Integer); +begin + DataTable.Fields[idx_CapitulosPresupuestoVISIBLE].AsInteger := aValue; +end; + +function TCapitulosPresupuestoDataTableRules.GetVISIBLEIsNull: boolean; +begin + result := DataTable.Fields[idx_CapitulosPresupuestoVISIBLE].IsNull; +end; + +procedure TCapitulosPresupuestoDataTableRules.SetVISIBLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_CapitulosPresupuestoVISIBLE].AsVariant := Null; end; diff --git a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas index f7af4258..dec69eed 100644 --- a/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas +++ b/Source/Modulos/Presupuestos de cliente/Model/schPresupuestosClienteServer_Intf.pas @@ -9,17 +9,17 @@ 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_ValoresDelta = '{520946FF-B8D7-470C-A8D1-085390E88242}'; - RID_PropiedadesDelta = '{953D246D-7ED0-4B5D-9755-B661A08AC228}'; - RID_ListaAnosPresupuestosDelta = '{EE50CEDA-7BCF-4608-AC09-803D95F41C36}'; - RID_PresupuestosClienteDelta = '{D990481F-7BB6-4BBC-A0C0-3623BC468D3B}'; - RID_CapitulosPresupuestoDelta = '{1D168748-D2EF-4DB7-85A3-05B2C3237FB9}'; - RID_PresupuestosCliente_DetallesDelta = '{1BC57EDD-6A91-48FA-B9AE-EDCA498A98BD}'; + RID_ValoresDelta = '{F474C394-03E2-478D-B532-27D4854BFAF2}'; + RID_PropiedadesDelta = '{884EB1CE-DC47-4617-8333-3EC5DBFD665B}'; + RID_ListaAnosPresupuestosDelta = '{925DEA86-D6E7-405B-8AC5-DC91888B5F49}'; + RID_PresupuestosClienteDelta = '{1EAAD063-02A3-4241-8820-524FA60D7806}'; + RID_CapitulosPresupuestoDelta = '{70F8EB27-2019-40CA-9A3C-091F37ADC909}'; + RID_PresupuestosCliente_DetallesDelta = '{13C9A38A-3687-4815-8E90-F51DAC75F95B}'; type { IValoresDelta } IValoresDelta = interface(IValores) - ['{520946FF-B8D7-470C-A8D1-085390E88242}'] + ['{F474C394-03E2-478D-B532-27D4854BFAF2}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_EMPRESAValue : Integer; @@ -101,7 +101,7 @@ type { IPropiedadesDelta } IPropiedadesDelta = interface(IPropiedades) - ['{953D246D-7ED0-4B5D-9755-B661A08AC228}'] + ['{884EB1CE-DC47-4617-8333-3EC5DBFD665B}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldDESCRIPCIONValue : String; @@ -147,7 +147,7 @@ type { IListaAnosPresupuestosDelta } IListaAnosPresupuestosDelta = interface(IListaAnosPresupuestos) - ['{EE50CEDA-7BCF-4608-AC09-803D95F41C36}'] + ['{925DEA86-D6E7-405B-8AC5-DC91888B5F49}'] { Property getters and setters } function GetOldANOValue : String; @@ -181,7 +181,7 @@ type { IPresupuestosClienteDelta } IPresupuestosClienteDelta = interface(IPresupuestosCliente) - ['{D990481F-7BB6-4BBC-A0C0-3623BC468D3B}'] + ['{1EAAD063-02A3-4241-8820-524FA60D7806}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_EMPRESAValue : Integer; @@ -699,20 +699,32 @@ type { ICapitulosPresupuestoDelta } ICapitulosPresupuestoDelta = interface(ICapitulosPresupuesto) - ['{1D168748-D2EF-4DB7-85A3-05B2C3237FB9}'] + ['{70F8EB27-2019-40CA-9A3C-091F37ADC909}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldPOSICIONValue : Integer; function GetOldTIPO_DETALLEValue : String; function GetOldTIPO_ARTICULOValue : String; - function GetOldPROPIEDADValue : String; + function GetOldCONCEPTOValue : String; + function GetOldCANTIDADValue : Integer; + function GetOldIMPORTE_UNIDADValue : Integer; + function GetOldIMPORTE_TOTALValue : Integer; + function GetOldDESCUENTOValue : Integer; + function GetOldIMPORTE_PORTEValue : Integer; + function GetOldVISIBLEValue : Integer; { Properties } property OldID : Integer read GetOldIDValue; property OldPOSICION : Integer read GetOldPOSICIONValue; property OldTIPO_DETALLE : String read GetOldTIPO_DETALLEValue; property OldTIPO_ARTICULO : String read GetOldTIPO_ARTICULOValue; - property OldPROPIEDAD : String read GetOldPROPIEDADValue; + property OldCONCEPTO : String read GetOldCONCEPTOValue; + property OldCANTIDAD : Integer read GetOldCANTIDADValue; + property OldIMPORTE_UNIDAD : Integer read GetOldIMPORTE_UNIDADValue; + property OldIMPORTE_TOTAL : Integer read GetOldIMPORTE_TOTALValue; + property OldDESCUENTO : Integer read GetOldDESCUENTOValue; + property OldIMPORTE_PORTE : Integer read GetOldIMPORTE_PORTEValue; + property OldVISIBLE : Integer read GetOldVISIBLEValue; end; { TCapitulosPresupuestoBusinessProcessorRules } @@ -744,12 +756,48 @@ type function GetOldTIPO_ARTICULOIsNull: Boolean; virtual; procedure SetTIPO_ARTICULOValue(const aValue: String); virtual; procedure SetTIPO_ARTICULOIsNull(const aValue: Boolean); virtual; - function GetPROPIEDADValue: String; virtual; - function GetPROPIEDADIsNull: Boolean; virtual; - function GetOldPROPIEDADValue: String; virtual; - function GetOldPROPIEDADIsNull: Boolean; virtual; - procedure SetPROPIEDADValue(const aValue: String); virtual; - procedure SetPROPIEDADIsNull(const aValue: Boolean); virtual; + function GetCONCEPTOValue: String; virtual; + function GetCONCEPTOIsNull: Boolean; virtual; + function GetOldCONCEPTOValue: String; virtual; + function GetOldCONCEPTOIsNull: Boolean; virtual; + procedure SetCONCEPTOValue(const aValue: String); virtual; + procedure SetCONCEPTOIsNull(const aValue: Boolean); virtual; + function GetCANTIDADValue: Integer; virtual; + function GetCANTIDADIsNull: Boolean; virtual; + function GetOldCANTIDADValue: Integer; virtual; + function GetOldCANTIDADIsNull: Boolean; virtual; + procedure SetCANTIDADValue(const aValue: Integer); virtual; + procedure SetCANTIDADIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_UNIDADValue: Integer; virtual; + function GetIMPORTE_UNIDADIsNull: Boolean; virtual; + function GetOldIMPORTE_UNIDADValue: Integer; virtual; + function GetOldIMPORTE_UNIDADIsNull: Boolean; virtual; + procedure SetIMPORTE_UNIDADValue(const aValue: Integer); virtual; + procedure SetIMPORTE_UNIDADIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_TOTALValue: Integer; virtual; + function GetIMPORTE_TOTALIsNull: Boolean; virtual; + function GetOldIMPORTE_TOTALValue: Integer; virtual; + function GetOldIMPORTE_TOTALIsNull: Boolean; virtual; + procedure SetIMPORTE_TOTALValue(const aValue: Integer); virtual; + procedure SetIMPORTE_TOTALIsNull(const aValue: Boolean); virtual; + function GetDESCUENTOValue: Integer; virtual; + function GetDESCUENTOIsNull: Boolean; virtual; + function GetOldDESCUENTOValue: Integer; virtual; + function GetOldDESCUENTOIsNull: Boolean; virtual; + procedure SetDESCUENTOValue(const aValue: Integer); virtual; + procedure SetDESCUENTOIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_PORTEValue: Integer; virtual; + function GetIMPORTE_PORTEIsNull: Boolean; virtual; + function GetOldIMPORTE_PORTEValue: Integer; virtual; + function GetOldIMPORTE_PORTEIsNull: Boolean; virtual; + procedure SetIMPORTE_PORTEValue(const aValue: Integer); virtual; + procedure SetIMPORTE_PORTEIsNull(const aValue: Boolean); virtual; + function GetVISIBLEValue: Integer; virtual; + function GetVISIBLEIsNull: Boolean; virtual; + function GetOldVISIBLEValue: Integer; virtual; + function GetOldVISIBLEIsNull: Boolean; virtual; + procedure SetVISIBLEValue(const aValue: Integer); virtual; + procedure SetVISIBLEIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; @@ -768,10 +816,34 @@ type property TIPO_ARTICULOIsNull : Boolean read GetTIPO_ARTICULOIsNull write SetTIPO_ARTICULOIsNull; property OldTIPO_ARTICULO : String read GetOldTIPO_ARTICULOValue; property OldTIPO_ARTICULOIsNull : Boolean read GetOldTIPO_ARTICULOIsNull; - property PROPIEDAD : String read GetPROPIEDADValue write SetPROPIEDADValue; - property PROPIEDADIsNull : Boolean read GetPROPIEDADIsNull write SetPROPIEDADIsNull; - property OldPROPIEDAD : String read GetOldPROPIEDADValue; - property OldPROPIEDADIsNull : Boolean read GetOldPROPIEDADIsNull; + property CONCEPTO : String read GetCONCEPTOValue write SetCONCEPTOValue; + property CONCEPTOIsNull : Boolean read GetCONCEPTOIsNull write SetCONCEPTOIsNull; + property OldCONCEPTO : String read GetOldCONCEPTOValue; + property OldCONCEPTOIsNull : Boolean read GetOldCONCEPTOIsNull; + property CANTIDAD : Integer read GetCANTIDADValue write SetCANTIDADValue; + property CANTIDADIsNull : Boolean read GetCANTIDADIsNull write SetCANTIDADIsNull; + property OldCANTIDAD : Integer read GetOldCANTIDADValue; + property OldCANTIDADIsNull : Boolean read GetOldCANTIDADIsNull; + property IMPORTE_UNIDAD : Integer read GetIMPORTE_UNIDADValue write SetIMPORTE_UNIDADValue; + property IMPORTE_UNIDADIsNull : Boolean read GetIMPORTE_UNIDADIsNull write SetIMPORTE_UNIDADIsNull; + property OldIMPORTE_UNIDAD : Integer read GetOldIMPORTE_UNIDADValue; + property OldIMPORTE_UNIDADIsNull : Boolean read GetOldIMPORTE_UNIDADIsNull; + property IMPORTE_TOTAL : Integer read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue; + property IMPORTE_TOTALIsNull : Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; + property OldIMPORTE_TOTAL : Integer read GetOldIMPORTE_TOTALValue; + property OldIMPORTE_TOTALIsNull : Boolean read GetOldIMPORTE_TOTALIsNull; + property DESCUENTO : Integer read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull : Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; + property OldDESCUENTO : Integer read GetOldDESCUENTOValue; + property OldDESCUENTOIsNull : Boolean read GetOldDESCUENTOIsNull; + property IMPORTE_PORTE : Integer read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue; + property IMPORTE_PORTEIsNull : Boolean read GetIMPORTE_PORTEIsNull write SetIMPORTE_PORTEIsNull; + property OldIMPORTE_PORTE : Integer read GetOldIMPORTE_PORTEValue; + property OldIMPORTE_PORTEIsNull : Boolean read GetOldIMPORTE_PORTEIsNull; + property VISIBLE : Integer read GetVISIBLEValue write SetVISIBLEValue; + property VISIBLEIsNull : Boolean read GetVISIBLEIsNull write SetVISIBLEIsNull; + property OldVISIBLE : Integer read GetOldVISIBLEValue; + property OldVISIBLEIsNull : Boolean read GetOldVISIBLEIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -781,7 +853,7 @@ type { IPresupuestosCliente_DetallesDelta } IPresupuestosCliente_DetallesDelta = interface(IPresupuestosCliente_Detalles) - ['{1BC57EDD-6A91-48FA-B9AE-EDCA498A98BD}'] + ['{13C9A38A-3687-4815-8E90-F51DAC75F95B}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_PRESUPUESTOValue : Integer; @@ -2726,35 +2798,221 @@ begin BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoTIPO_ARTICULO] := Null; end; -function TCapitulosPresupuestoBusinessProcessorRules.GetPROPIEDADValue: String; +function TCapitulosPresupuestoBusinessProcessorRules.GetCONCEPTOValue: String; begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoPROPIEDAD]; + result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCONCEPTO]; end; -function TCapitulosPresupuestoBusinessProcessorRules.GetPROPIEDADIsNull: Boolean; +function TCapitulosPresupuestoBusinessProcessorRules.GetCONCEPTOIsNull: Boolean; begin - result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoPROPIEDAD]); + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCONCEPTO]); end; -function TCapitulosPresupuestoBusinessProcessorRules.GetOldPROPIEDADValue: String; +function TCapitulosPresupuestoBusinessProcessorRules.GetOldCONCEPTOValue: String; begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoPROPIEDAD]; + result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoCONCEPTO]; end; -function TCapitulosPresupuestoBusinessProcessorRules.GetOldPROPIEDADIsNull: Boolean; +function TCapitulosPresupuestoBusinessProcessorRules.GetOldCONCEPTOIsNull: Boolean; begin - result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoPROPIEDAD]); + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoCONCEPTO]); end; -procedure TCapitulosPresupuestoBusinessProcessorRules.SetPROPIEDADValue(const aValue: String); +procedure TCapitulosPresupuestoBusinessProcessorRules.SetCONCEPTOValue(const aValue: String); begin - BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoPROPIEDAD] := aValue; + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCONCEPTO] := aValue; end; -procedure TCapitulosPresupuestoBusinessProcessorRules.SetPROPIEDADIsNull(const aValue: Boolean); +procedure TCapitulosPresupuestoBusinessProcessorRules.SetCONCEPTOIsNull(const aValue: Boolean); begin if aValue then - BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoPROPIEDAD] := Null; + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCONCEPTO] := Null; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetCANTIDADValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCANTIDAD]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetCANTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCANTIDAD]); +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldCANTIDADValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoCANTIDAD]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldCANTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoCANTIDAD]); +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetCANTIDADValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCANTIDAD] := aValue; +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetCANTIDADIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoCANTIDAD] := Null; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetIMPORTE_UNIDADValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_UNIDAD]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetIMPORTE_UNIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_UNIDAD]); +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldIMPORTE_UNIDADValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoIMPORTE_UNIDAD]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldIMPORTE_UNIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoIMPORTE_UNIDAD]); +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetIMPORTE_UNIDADValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_UNIDAD] := aValue; +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetIMPORTE_UNIDADIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_UNIDAD] := Null; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetIMPORTE_TOTALValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_TOTAL]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetIMPORTE_TOTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_TOTAL]); +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldIMPORTE_TOTALValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoIMPORTE_TOTAL]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldIMPORTE_TOTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoIMPORTE_TOTAL]); +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetIMPORTE_TOTALValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_TOTAL] := aValue; +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetIMPORTE_TOTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_TOTAL] := Null; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetDESCUENTOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoDESCUENTO]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetDESCUENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoDESCUENTO]); +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldDESCUENTOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoDESCUENTO]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldDESCUENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoDESCUENTO]); +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetDESCUENTOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoDESCUENTO] := aValue; +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetDESCUENTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoDESCUENTO] := Null; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetIMPORTE_PORTEValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_PORTE]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetIMPORTE_PORTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_PORTE]); +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldIMPORTE_PORTEValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoIMPORTE_PORTE]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldIMPORTE_PORTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoIMPORTE_PORTE]); +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetIMPORTE_PORTEValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_PORTE] := aValue; +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetIMPORTE_PORTEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoIMPORTE_PORTE] := Null; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetVISIBLEValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoVISIBLE]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetVISIBLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoVISIBLE]); +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldVISIBLEValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoVISIBLE]; +end; + +function TCapitulosPresupuestoBusinessProcessorRules.GetOldVISIBLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_CapitulosPresupuestoVISIBLE]); +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetVISIBLEValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoVISIBLE] := aValue; +end; + +procedure TCapitulosPresupuestoBusinessProcessorRules.SetVISIBLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_CapitulosPresupuestoVISIBLE] := Null; end; diff --git a/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas b/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas index 6574c952..bb3f5510 100644 --- a/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas +++ b/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas @@ -34,6 +34,9 @@ type IBizCapitulo = interface(ICapitulosPresupuesto) ['{FE35D755-7781-441F-960C-98F847A5039E}'] + function GetTipo: String; + procedure SetTipo(Value: String); + property Tipo: String read GetTipo write SetTipo; end; IBizDetallesPresupuestoCliente = interface(IPresupuestosCliente_Detalles) @@ -59,6 +62,14 @@ type end; TBizCapitulo = class(TCapitulosPresupuestoDataTableRules, IBizCapitulo) + protected + FTipo : String; + function GetTipo: String; + procedure SetTipo(Value: String); + procedure OnNewRecord(Sender: TDADataTable); override; + public + property Tipo: String read GetTipo write SetTipo; + constructor Create(aDataTable: TDADataTable); override; end; TBizDetallesPresupuestoCliente = class(TPresupuestosCliente_DetallesDataTableRules, IBizDetallesPresupuestoCliente) @@ -120,6 +131,30 @@ begin EnlazarMaestroDetalle(FValoresLink, FValores); end; +{ TBizCapitulo } + +constructor TBizCapitulo.Create(aDataTable: TDADataTable); +begin + inherited; + FTipo := TIPO_CAPITULO_V; +end; + +function TBizCapitulo.GetTipo: String; +begin + Result := FTipo; +end; + +procedure TBizCapitulo.OnNewRecord(Sender: TDADataTable); +begin + inherited; + TIPO_ARTICULO := FTipo; +end; + +procedure TBizCapitulo.SetTipo(Value: String); +begin + FTipo := Value; +end; + initialization RegisterDataTableRules(BIZ_CLIENT_DETALLES_PRESUPUESTO_CLIENTE, TBizDetallesPresupuestoCliente); RegisterDataTableRules(BIZ_CLIENT_PROPIEDADES, TBizPropiedades); diff --git a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm index df2c0421..b2594d0d 100644 --- a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm +++ b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm @@ -526,7 +526,13 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente Default = True TargetTable = 'PRESUPUESTOS_CLIENTE_CAPITULOS' Name = 'IBX' - StatementType = stAutoSQL + SQL = + 'SELECT '#10' ID, POSICION, TIPO_DETALLE, TIPO_ARTICULO, CONCEPTO,' + + ' '#10' 1 as CANTIDAD, 0 as IMPORTE_UNIDAD, 0 as IMPORTE_TOTAL, 0 ' + + 'as DESCUENTO,'#10' 0 as IMPORTE_PORTE,'#10' 1 as VISIBLE'#10' FROM'#10' ' + + ' PRESUPUESTOS_CLIENTE_CAPITULOS'#10' WHERE {Where}'#10' order by posi' + + 'cion'#10 + StatementType = stSQL ColumnMappings = < item DatasetField = 'ID' @@ -545,36 +551,101 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente TableField = 'TIPO_ARTICULO' end item - DatasetField = 'PROPIEDAD' - TableField = 'PROPIEDAD' + DatasetField = 'CONCEPTO' + TableField = 'CONCEPTO' + end + item + DatasetField = 'CANTIDAD' + TableField = '' + SQLOrigin = 'CANTIDAD' + end + item + DatasetField = 'IMPORTE_UNIDAD' + TableField = '' + SQLOrigin = 'IMPORTE_UNIDAD' + end + item + DatasetField = 'IMPORTE_TOTAL' + TableField = '' + SQLOrigin = 'IMPORTE_TOTAL' + end + item + DatasetField = 'VISIBLE' + TableField = '' + SQLOrigin = 'VISIBLE' + end + item + DatasetField = 'DESCUENTO' + TableField = '' + SQLOrigin = 'DESCUENTO' + end + item + DatasetField = 'IMPORTE_PORTE' + TableField = '' + SQLOrigin = 'IMPORTE_PORTE' end> end> Name = 'CapitulosPresupuesto' Fields = < item Name = 'ID' - DataType = datInteger - Required = True + DataType = datAutoInc + GeneratorName = 'GEN_PRESUPUESTOS_CLIENTE_CAPITU' + DictionaryEntry = 'CapitulosPresupuesto_ID' InPrimaryKey = True end item Name = 'POSICION' DataType = datInteger + DictionaryEntry = 'CapitulosPresupuesto_POSICION' end item Name = 'TIPO_DETALLE' DataType = datString Size = 10 + DictionaryEntry = 'CapitulosPresupuesto_TIPO_DETALLE' end item Name = 'TIPO_ARTICULO' DataType = datString Size = 2 + DictionaryEntry = 'CapitulosPresupuesto_TIPO_ARTICULO' end item - Name = 'PROPIEDAD' + Name = 'CONCEPTO' DataType = datString Size = 255 + DictionaryEntry = 'CapitulosPresupuesto_CONCEPTO' + end + item + Name = 'CANTIDAD' + DataType = datInteger + DictionaryEntry = 'CapitulosPresupuesto_CANTIDAD' + end + item + Name = 'IMPORTE_UNIDAD' + DataType = datInteger + DictionaryEntry = 'CapitulosPresupuesto_IMPORTE_UNIDAD' + end + item + Name = 'IMPORTE_TOTAL' + DataType = datInteger + DictionaryEntry = 'CapitulosPresupuesto_IMPORTE_TOTAL' + end + item + Name = 'DESCUENTO' + DataType = datInteger + DictionaryEntry = 'CapitulosPresupuesto_DESCUENTO' + end + item + Name = 'IMPORTE_PORTE' + DataType = datInteger + DictionaryEntry = 'CapitulosPresupuesto_IMPORTE_PORTE' + end + item + Name = 'VISIBLE' + DataType = datInteger + DictionaryEntry = 'CapitulosPresupuesto_VISIBLE' end> end item @@ -1390,6 +1461,118 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente ColumnMappings = <> end> Name = 'Update_PresupuestosCliente_Detalles' + end + item + Params = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_PRESUPUESTOS_CLIENTE_CAPITU' + Value = '' + end + item + Name = 'POSICION' + DataType = datInteger + Value = '' + end + item + Name = 'TIPO_DETALLE' + DataType = datString + Size = 10 + Value = '' + end + item + Name = 'TIPO_ARTICULO' + DataType = datString + Size = 2 + Value = '' + end + item + Name = 'CONCEPTO' + DataType = datString + Size = 255 + Value = '' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'PRESUPUESTOS_CLIENTE_CAPITULOS' + SQL = + 'INSERT'#10' INTO PRESUPUESTOS_CLIENTE_CAPITULOS'#10' (ID, POSICION, ' + + 'TIPO_DETALLE, TIPO_ARTICULO, CONCEPTO)'#10' VALUES'#10' (:ID, :POSIC' + + 'ION, :TIPO_DETALLE, :TIPO_ARTICULO, :CONCEPTO)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Insert_CapitulosPresupuesto' + end + item + Params = < + item + Name = 'OLD_ID' + DataType = datAutoInc + Value = '' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'PRESUPUESTOS_CLIENTE_CAPITULOS' + SQL = + 'DELETE '#10' FROM'#10' PRESUPUESTOS_CLIENTE_CAPITULOS'#10' WHERE'#10' (I' + + 'D = :OLD_ID)' + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Delete_CapitulosPresupuesto' + end + item + Params = < + item + Name = 'POSICION' + DataType = datInteger + Value = '' + end + item + Name = 'TIPO_DETALLE' + DataType = datString + Size = 10 + Value = '' + end + item + Name = 'TIPO_ARTICULO' + DataType = datString + Size = 2 + Value = '' + end + item + Name = 'CONCEPTO' + DataType = datString + Size = 255 + Value = '' + end + item + Name = 'OLD_ID' + Value = '' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'PRESUPUESTOS_CLIENTE_CAPITULOS' + SQL = + 'UPDATE PRESUPUESTOS_CLIENTE_CAPITULOS'#10' SET '#10' POSICION = :POS' + + 'ICION, '#10' TIPO_DETALLE = :TIPO_DETALLE, '#10' TIPO_ARTICULO = :' + + 'TIPO_ARTICULO, '#10' CONCEPTO = :CONCEPTO'#10' WHERE'#10' (ID = :OLD_' + + 'ID)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Update_CapitulosPresupuesto' end> RelationShips = < item @@ -1450,6 +1633,27 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente DoInsert = False DatasetName = 'PresupuestosCliente' FailureBehavior = fbRaiseException + end + item + Name = 'Insert CapitulosPresupuesto' + DoUpdate = False + DoDelete = False + DatasetName = 'CapitulosPresupuesto' + FailureBehavior = fbRaiseException + end + item + Name = 'Update CapitulosPresupuesto' + DoInsert = False + DoDelete = False + DatasetName = 'CapitulosPresupuesto' + FailureBehavior = fbRaiseException + end + item + Name = 'Delete CapitulosPresupuesto' + DoUpdate = False + DoInsert = False + DatasetName = 'CapitulosPresupuesto' + FailureBehavior = fbRaiseException end> Version = 0 Left = 48 @@ -1708,6 +1912,61 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente DataType = datString Size = 255 DisplayLabel = 'Tipo' + end + item + Name = 'CapitulosPresupuesto_ID' + DataType = datAutoInc + GeneratorName = 'GEN_PRESUPUESTOS_CLIENTE_CAPITU' + Required = True + DisplayLabel = 'ID' + end + item + Name = 'CapitulosPresupuesto_POSICION' + DataType = datInteger + end + item + Name = 'CapitulosPresupuesto_TIPO_DETALLE' + DataType = datString + Size = 10 + end + item + Name = 'CapitulosPresupuesto_TIPO_ARTICULO' + DataType = datString + Size = 2 + end + item + Name = 'CapitulosPresupuesto_CONCEPTO' + DataType = datString + Size = 255 + end + item + Name = 'CapitulosPresupuesto_PROPIEDAD' + DataType = datString + Size = 255 + end + item + Name = 'CapitulosPresupuesto_CANTIDAD' + DataType = datInteger + end + item + Name = 'CapitulosPresupuesto_IMPORTE_UNIDAD' + DataType = datInteger + end + item + Name = 'CapitulosPresupuesto_IMPORTE_TOTAL' + DataType = datInteger + end + item + Name = 'CapitulosPresupuesto_DESCUENTO' + DataType = datInteger + end + item + Name = 'CapitulosPresupuesto_IMPORTE_PORTE' + DataType = datInteger + end + item + Name = 'CapitulosPresupuesto_VISIBLE' + DataType = datInteger end> Left = 48 Top = 152 @@ -1738,4 +1997,15 @@ object srvPresupuestosCliente: TsrvPresupuestosCliente Left = 232 Top = 96 end + object bpCapitulosPresupuesto: TDABusinessProcessor + Schema = schPresupuestosCliente + InsertCommandName = 'Insert_CapitulosPresupuesto' + DeleteCommandName = 'Delete_CapitulosPresupuesto' + UpdateCommandName = 'Update_CapitulosPresupuesto' + ReferencedDataset = 'CapitulosPresupuesto' + ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] + UpdateMode = updWhereKeyOnly + Left = 232 + Top = 168 + end end diff --git a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.pas b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.pas index 998f221a..37ce187f 100644 --- a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.pas +++ b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.pas @@ -24,6 +24,7 @@ type Bin2DataStreamer: TDABin2DataStreamer; bpPresupuestosCliente: TDABusinessProcessor; bpPresupuestosClienteDetalles: TDABusinessProcessor; + bpCapitulosPresupuesto: TDABusinessProcessor; schPresupuestosCliente: TDASchema; DADataDictionary: TDADataDictionary; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; diff --git a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk index 30e26158..82aef60c 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk +++ b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk @@ -52,7 +52,19 @@ requires cxEditorsD11, cxDataD11, cxExtEditorsD11, - ApplicationBase; + ApplicationBase, + PngComponentsD10, + PNG_D10, + vclactnband, + tb2k_d10, + tbx_d10, + DataAbstract_Core_D11, + dsnap, + adortl, + RemObjects_Core_D11, + cxGridD11, + cxPageControlD11, + cxExportD11; contains uPresupuestosClienteViewRegister in 'uPresupuestosClienteViewRegister.pas', @@ -72,10 +84,11 @@ contains uViewTotalesPresupuesto in 'uViewTotalesPresupuesto.pas' {frViewTotalesPresupuesto: TFrame}, uViewPresupuestoCliente in 'uViewPresupuestoCliente.pas' {frViewPresupuestoCliente: TFrame}, uViewConfiguracionDocArmario in 'uViewConfiguracionDocArmario.pas' {frViewConfiguracionDocArmario: TFrame}, - uViewConfiguracionDocBano in 'uViewConfiguracionDocBano.pas' {frViewConfiguracionDocBano: TFrame}, + uViewConfiguracionDocBano in 'uViewConfiguracionDocBano.pas' {frViewConfiguracionDocBANO: TFrame}, uViewConfiguracionDocCocina in 'uViewConfiguracionDocCocina.pas' {frViewConfiguracionDocCocina: TFrame}, uViewConfiguracionDocElectrodomestico in 'uViewConfiguracionDocElectrodomestico.pas' {frViewConfiguracionDocElectrodomestico: TFrame}, uViewConfiguracionDocVarios in 'uViewConfiguracionDocVarios.pas' {frViewConfiguracionDocVarios: TFrame}, - uViewConfiguracionDocObra in 'uViewConfiguracionDocObra.pas' {frViewConfiguracionDocObra: TFrame}; + uViewConfiguracionDocObra in 'uViewConfiguracionDocObra.pas' {frViewConfiguracionDocObra: TFrame}, + uViewConfiguracionCapitulo in 'uViewConfiguracionCapitulo.pas' {frViewConfiguracionCapitulo: TFrame}; end. diff --git a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj index 5ee973c5..ca497d83 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj +++ b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj @@ -49,34 +49,46 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fEditorAsignarDescuento
@@ -104,12 +116,16 @@ TfEditorPedidosClientePreview
+ +
frViewConfiguracionCapitulo
+ TFrame +
frViewConfiguracionDocArmario
TFrame
-
frViewConfiguracionDocBano
+
frViewConfiguracionDocBANO
TFrame
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.dfm new file mode 100644 index 00000000..0d05d317 --- /dev/null +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.dfm @@ -0,0 +1,83 @@ +inherited frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo + inherited cxGrid: TcxGrid + inherited cxGridView: TcxGridDBTableView + inherited cxGridViewID: TcxGridDBColumn + VisibleForCustomization = False + end + inherited cxGridViewPOSICION: TcxGridDBColumn + VisibleForCustomization = False + end + inherited cxGridViewTIPO: TcxGridDBColumn + VisibleForCustomization = False + end + inherited cxGridViewID_ARTICULO: TcxGridDBColumn + DataBinding.FieldName = 'TIPO_ARTICULO' + VisibleForCustomization = False + end + inherited cxGridViewDESCRIPCION: TcxGridDBColumn + OnGetPropertiesForEdit = cxGridViewDESCRIPCIONGetPropertiesForEdit + end + inherited cxGridViewCANTIDAD: TcxGridDBColumn + Visible = False + VisibleForCustomization = False + end + inherited cxGridViewIMPORTEUNIDAD: TcxGridDBColumn + Visible = False + VisibleForCustomization = False + end + inherited cxGridViewDESCUENTO: TcxGridDBColumn + Visible = False + VisibleForCustomization = False + end + inherited cxGridViewIMPORTENETO: TcxGridDBColumn + Visible = False + VisibleForCustomization = False + end + inherited cxGridViewIMPORTETOTAL: TcxGridDBColumn + Visible = False + VisibleForCustomization = False + end + inherited cxGridViewVISIBLE: TcxGridDBColumn + VisibleForCustomization = False + end + end + end + inherited TBXDock1: TTBXDock + inherited TBXToolbar1: TTBXToolbar + ExplicitWidth = 447 + end + end + object cxLookupComboBox: TcxLookupComboBox [3] + Left = 78 + Top = 280 + ParentFont = False + Properties.DropDownListStyle = lsEditList + Properties.ImmediatePost = True + Properties.KeyFieldNames = 'DESCRIPCION' + Properties.ListColumns = < + item + FieldName = 'DESCRIPCION' + end> + Properties.ListOptions.ShowHeader = False + Properties.ListSource = DAPropiedades + Style.Font.Charset = DEFAULT_CHARSET + Style.Font.Color = clWindowText + Style.Font.Height = -13 + Style.Font.Name = 'Lucida Console' + Style.Font.Style = [] + Style.IsFontAssigned = True + TabOrder = 3 + Visible = False + Width = 145 + end + inherited ActionListContenido: TActionList + inherited actAnadirArticulos: TAction + Enabled = False + Visible = False + end + end + object DAPropiedades: TDADataSource + Left = 32 + Top = 272 + end +end diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.pas new file mode 100644 index 00000000..008dab67 --- /dev/null +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionCapitulo.pas @@ -0,0 +1,64 @@ +unit uViewConfiguracionCapitulo; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, uViewDetallesArticulos, cxStyles, cxCustomData, cxGraphics, cxFilter, + cxData, cxDataStorage, cxEdit, DB, cxDBData, cxImageComboBox, cxTextEdit, + cxRichEdit, cxCurrencyEdit, cxCheckBox, ImgList, PngImageList, uDAInterfaces, + uDADataTable, StdActns, ExtActns, ActnList, TB2Item, TBX, TB2Dock, TB2Toolbar, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, ComCtrls, StdCtrls, + JvExStdCtrls, JvCombobox, JvColorCombo, ToolWin, cxContainer, cxMaskEdit, + cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, uBizDetallesPresupuestoCliente; + +type + TfrViewConfiguracionCapitulo = class(TfrViewDetallesArticulos) + cxLookupComboBox: TcxLookupComboBox; + DAPropiedades: TDADataSource; + procedure CustomViewShow(Sender: TObject); + procedure cxGridViewDESCRIPCIONGetPropertiesForEdit( + Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; + var AProperties: TcxCustomEditProperties); + procedure CustomViewDestroy(Sender: TObject); + protected + FPropiedades: IBizPropiedades; + public + { Public declarations } + end; + +implementation +{$R *.dfm} + +uses uDetallesPresupuestoClienteController; + +procedure TfrViewConfiguracionCapitulo.CustomViewDestroy(Sender: TObject); +begin + FPropiedades := Nil; + inherited; +end; + +procedure TfrViewConfiguracionCapitulo.CustomViewShow(Sender: TObject); +begin + inherited; + if not Assigned(FPropiedades) then + begin + FPropiedades := (Controller as IDetallesPresupuestoClienteController).DarPropiedades; + FPropiedades.DataTable.Active := True; + DAPropiedades.DataTable := FPropiedades.DataTable; + end; + + if Assigned(Detalles) then + Detalles.Active := True; +end; + +procedure TfrViewConfiguracionCapitulo.cxGridViewDESCRIPCIONGetPropertiesForEdit( + Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; + var AProperties: TcxCustomEditProperties); +begin + inherited; + AProperties := cxLookupComboBox.Properties; +end; + +end. diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.dfm index 008aadd4..ef7bd84c 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.dfm @@ -1,83 +1,341 @@ inherited frViewConfiguracionDocArmario: TfrViewConfiguracionDocArmario - Width = 679 - Height = 530 - object Label1: TLabel [0] - Left = 11 - Top = 79 - Width = 76 - Height = 13 - Caption = 'Forma de pago:' - end - object Label2: TLabel [1] - Left = 11 - Top = 204 - Width = 90 - Height = 13 - Caption = 'Plazos de entrega:' - end - object Label4: TLabel [2] - Left = 11 - Top = 326 - Width = 75 - Height = 13 - Caption = 'Observaciones:' - end + Width = 838 + Height = 634 + ExplicitWidth = 838 + ExplicitHeight = 634 inherited Panel1: TPanel - Width = 669 - TabOrder = 2 + Width = 828 + TabOrder = 1 ExplicitWidth = 530 inherited Label3: TLabel - Width = 657 + Width = 816 + Visible = False end end inherited JvGradientHeaderPanel1: TJvGradientHeaderPanel - Width = 679 + Width = 838 LabelCaption = 'Configuraci'#243'n de los documentos de armario' + TabOrder = 0 ExplicitWidth = 540 end - object eCondiciones: TcxRichEdit - Left = 11 - Top = 448 - Properties.ScrollBars = ssVertical - Lines.Strings = ( - 'eCondiciones') - TabOrder = 0 - Visible = False - Height = 57 - Width = 529 - end - object ePlazosEntrega: TMemo - Left = 11 - Top = 225 - Width = 529 - Height = 90 - BevelInner = bvNone - BevelOuter = bvNone - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 3 - end - object eFormaPago: TMemo - Left = 11 - Top = 100 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 4 - end - object eObservaciones: TMemo - Left = 11 - Top = 346 - Width = 529 - Height = 90 - BevelInner = bvNone - BevelOuter = bvNone - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 5 + object Paginas: TPageControl + Left = 0 + Top = 68 + Width = 838 + Height = 566 + ActivePage = pagNotas + Align = alClient + TabOrder = 2 + object pagNotas: TTabSheet + Caption = 'Notas' + object Label1: TLabel + Left = 11 + Top = 22 + Width = 76 + Height = 13 + Caption = 'Forma de pago:' + end + object Label2: TLabel + Left = 11 + Top = 147 + Width = 90 + Height = 13 + Caption = 'Plazos de entrega:' + end + object Label4: TLabel + Left = 11 + Top = 269 + Width = 75 + Height = 13 + Caption = 'Observaciones:' + end + object eCondiciones: TcxRichEdit + Left = 11 + Top = 391 + Properties.ScrollBars = ssVertical + Lines.Strings = ( + 'eCondiciones') + TabOrder = 0 + Visible = False + Height = 57 + Width = 529 + end + object ePlazosEntrega: TMemo + Left = 11 + Top = 168 + Width = 529 + Height = 90 + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 1 + end + object eFormaPago: TMemo + Left = 11 + Top = 43 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 2 + end + object eObservaciones: TMemo + Left = 11 + Top = 289 + Width = 529 + Height = 90 + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 3 + end + end + object pagCapituloFrente: TTabSheet + Caption = 'Cap'#237'tulo frente' + ImageIndex = 1 + inline frViewConfiguracionCapituloFrente: TfrViewConfiguracionCapitulo + Left = 0 + Top = 0 + Width = 830 + Height = 538 + Align = alClient + BiDiMode = bdLeftToRight + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + ParentBiDiMode = False + ParentFont = False + TabOrder = 0 + ReadOnly = False + ExplicitWidth = 838 + ExplicitHeight = 634 + inherited ToolBar1: TToolBar + Width = 830 + Height = 24 + ExplicitWidth = 830 + ExplicitHeight = 24 + inherited ToolButton4: TToolButton + Wrap = False + end + inherited ToolButton14: TToolButton + Left = 334 + Top = 0 + ExplicitLeft = 334 + ExplicitTop = 0 + end + inherited FontName: TJvFontComboBox + Left = 368 + Top = 0 + ExplicitLeft = 368 + ExplicitTop = 0 + end + inherited FontSize: TEdit + Left = 513 + Top = 0 + ExplicitLeft = 513 + ExplicitTop = 0 + end + inherited UpDown1: TUpDown + Left = 555 + Top = 0 + ExplicitLeft = 555 + ExplicitTop = 0 + end + inherited ToolButton13: TToolButton + Left = 572 + Top = 0 + ExplicitLeft = 572 + ExplicitTop = 0 + end + inherited ToolButton6: TToolButton + Left = 580 + Top = 0 + ExplicitLeft = 580 + ExplicitTop = 0 + end + inherited ToolButton7: TToolButton + Left = 614 + Top = 0 + ExplicitLeft = 614 + ExplicitTop = 0 + end + inherited ToolButton8: TToolButton + Left = 648 + Top = 0 + ExplicitLeft = 648 + ExplicitTop = 0 + end + inherited ToolButton12: TToolButton + Left = 682 + Top = 0 + ExplicitLeft = 682 + ExplicitTop = 0 + end + inherited ToolButton9: TToolButton + Left = 690 + Top = 0 + ExplicitLeft = 690 + ExplicitTop = 0 + end + inherited ToolButton10: TToolButton + Left = 724 + Top = 0 + ExplicitLeft = 724 + ExplicitTop = 0 + end + inherited ToolButton11: TToolButton + Left = 758 + Top = 0 + ExplicitLeft = 758 + ExplicitTop = 0 + end + end + inherited cxGrid: TcxGrid + Top = 50 + Width = 830 + Height = 488 + ExplicitTop = 50 + ExplicitWidth = 838 + ExplicitHeight = 584 + end + inherited TBXDock1: TTBXDock + Top = 24 + Width = 830 + ExplicitTop = 24 + ExplicitWidth = 838 + end + inherited cxLookupComboBox: TcxLookupComboBox + Style.IsFontAssigned = True + end + end + end + object pagCapituloInterior: TTabSheet + Caption = 'Cap'#237'tulo interior' + ImageIndex = 2 + inline frViewConfiguracionCapituloInterior: TfrViewConfiguracionCapitulo + Left = 0 + Top = 0 + Width = 830 + Height = 538 + Align = alClient + BiDiMode = bdLeftToRight + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + ParentBiDiMode = False + ParentFont = False + TabOrder = 0 + ReadOnly = False + ExplicitWidth = 838 + ExplicitHeight = 634 + inherited ToolBar1: TToolBar + Width = 830 + Height = 24 + ExplicitWidth = 830 + ExplicitHeight = 24 + inherited ToolButton4: TToolButton + Wrap = False + end + inherited ToolButton14: TToolButton + Left = 334 + Top = 0 + ExplicitLeft = 334 + ExplicitTop = 0 + end + inherited FontName: TJvFontComboBox + Left = 368 + Top = 0 + ExplicitLeft = 368 + ExplicitTop = 0 + end + inherited FontSize: TEdit + Left = 513 + Top = 0 + ExplicitLeft = 513 + ExplicitTop = 0 + end + inherited UpDown1: TUpDown + Left = 555 + Top = 0 + ExplicitLeft = 555 + ExplicitTop = 0 + end + inherited ToolButton13: TToolButton + Left = 572 + Top = 0 + ExplicitLeft = 572 + ExplicitTop = 0 + end + inherited ToolButton6: TToolButton + Left = 580 + Top = 0 + ExplicitLeft = 580 + ExplicitTop = 0 + end + inherited ToolButton7: TToolButton + Left = 614 + Top = 0 + ExplicitLeft = 614 + ExplicitTop = 0 + end + inherited ToolButton8: TToolButton + Left = 648 + Top = 0 + ExplicitLeft = 648 + ExplicitTop = 0 + end + inherited ToolButton12: TToolButton + Left = 682 + Top = 0 + ExplicitLeft = 682 + ExplicitTop = 0 + end + inherited ToolButton9: TToolButton + Left = 690 + Top = 0 + ExplicitLeft = 690 + ExplicitTop = 0 + end + inherited ToolButton10: TToolButton + Left = 724 + Top = 0 + ExplicitLeft = 724 + ExplicitTop = 0 + end + inherited ToolButton11: TToolButton + Left = 758 + Top = 0 + ExplicitLeft = 758 + ExplicitTop = 0 + end + end + inherited cxGrid: TcxGrid + Top = 50 + Width = 830 + Height = 488 + ExplicitTop = 50 + ExplicitWidth = 838 + ExplicitHeight = 584 + end + inherited TBXDock1: TTBXDock + Top = 24 + Width = 830 + ExplicitTop = 24 + ExplicitWidth = 838 + end + inherited cxLookupComboBox: TcxLookupComboBox + Style.IsFontAssigned = True + end + end + end end end diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.pas index ce49b051..0621f6f0 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.pas +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.pas @@ -5,17 +5,25 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewConfiguracionBase, cxControls, cxContainer, cxEdit, cxTextEdit, cxMemo, - cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls; + cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls, + ComCtrls, uCustomView, uViewDetallesBase, uViewDetallesDTO, + uViewDetallesArticulos, uViewConfiguracionCapitulo; type TfrViewConfiguracionDocArmario = class(TfrViewConfiguracionBase) + Paginas: TPageControl; + pagNotas: TTabSheet; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; eCondiciones: TcxRichEdit; ePlazosEntrega: TMemo; eFormaPago: TMemo; eObservaciones: TMemo; - Label1: TLabel; - Label2: TLabel; - Label4: TLabel; + pagCapituloFrente: TTabSheet; + frViewConfiguracionCapituloFrente: TfrViewConfiguracionCapitulo; + pagCapituloInterior: TTabSheet; + frViewConfiguracionCapituloInterior: TfrViewConfiguracionCapitulo; public class function GetViewClass : TClass; override; class function DarEtiqueta : String; override; @@ -30,7 +38,8 @@ implementation {$R *.dfm} { TfrViewConfiguracionDocARMARIO } -uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController; +uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController, +uBizDetallesPresupuestoCliente, uDetallesPresupuestoClienteController; procedure TfrViewConfiguracionDocArmario.CargarValores; begin @@ -43,6 +52,13 @@ begin eObservaciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_ARMARIO); eCondiciones.Lines.Clear; eCondiciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_CONDICIONES_ARMARIO); + + frViewConfiguracionCapituloFrente.Controller := TDetallesPresupuestoClienteController.Create; + frViewConfiguracionCapituloFrente.Detalles := (frViewConfiguracionCapituloFrente.Controller as IDetallesPresupuestoClienteController).BuscarCapitulo(TIPO_CAPITULO_AF); + + frViewConfiguracionCapituloInterior.Controller := TDetallesPresupuestoClienteController.Create; + frViewConfiguracionCapituloInterior.Detalles := (frViewConfiguracionCapituloInterior.Controller as IDetallesPresupuestoClienteController).BuscarCapitulo(TIPO_CAPITULO_AI); + end; class function TfrViewConfiguracionDocArmario.DarEtiqueta: String; @@ -62,6 +78,9 @@ begin AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_PLAZOS_ENTREGA_ARMARIO, ePlazosEntrega.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_OBSERVACIONES_ARMARIO, eObservaciones.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_CONDICIONES_ARMARIO, eCondiciones.Text); + + frViewConfiguracionCapituloFrente.Detalles.DataTable.ApplyUpdates; + frViewConfiguracionCapituloInterior.Detalles.DataTable.ApplyUpdates; end; diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.dfm index 437a01a7..c391fb60 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.dfm @@ -1,79 +1,215 @@ -inherited frViewConfiguracionDocBano: TfrViewConfiguracionDocBano - Width = 670 - Height = 528 - object Label1: TLabel [0] - Left = 11 - Top = 79 - Width = 76 - Height = 13 - Caption = 'Forma de pago:' - end - object Label2: TLabel [1] - Left = 11 - Top = 204 - Width = 90 - Height = 13 - Caption = 'Plazos de entrega:' - end - object Label4: TLabel [2] - Left = 11 - Top = 326 - Width = 75 - Height = 13 - Caption = 'Observaciones:' - end +inherited frViewConfiguracionDocBANO: TfrViewConfiguracionDocBANO + Width = 876 + Height = 651 inherited Panel1: TPanel - Width = 660 - TabOrder = 2 - ExplicitWidth = 530 + Width = 866 + TabOrder = 1 inherited Label3: TLabel - Width = 648 + Width = 854 + Visible = False end end inherited JvGradientHeaderPanel1: TJvGradientHeaderPanel - Width = 670 + Width = 876 LabelCaption = 'Configuraci'#243'n de los documentos de ba'#241'o' - ExplicitWidth = 540 - end - object eCondiciones: TcxRichEdit - Left = 11 - Top = 448 - Properties.ScrollBars = ssVertical - Lines.Strings = ( - 'eCondiciones') TabOrder = 0 - Visible = False - Height = 57 - Width = 529 end - object ePlazosEntrega: TMemo - Left = 11 - Top = 225 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 3 - end - object eFormaPago: TMemo - Left = 11 - Top = 100 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 4 - end - object eObservaciones: TMemo - Left = 11 - Top = 346 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 5 + object paginas: TPageControl + Left = 0 + Top = 68 + Width = 876 + Height = 583 + ActivePage = pagNotas + Align = alClient + TabOrder = 2 + ExplicitWidth = 451 + ExplicitHeight = 236 + object pagNotas: TTabSheet + Caption = 'Notas' + ExplicitWidth = 443 + ExplicitHeight = 208 + object Label1: TLabel + Left = 11 + Top = 16 + Width = 76 + Height = 13 + Caption = 'Forma de pago:' + end + object Label2: TLabel + Left = 11 + Top = 141 + Width = 90 + Height = 13 + Caption = 'Plazos de entrega:' + end + object Label4: TLabel + Left = 11 + Top = 263 + Width = 75 + Height = 13 + Caption = 'Observaciones:' + end + object eCondiciones: TcxRichEdit + Left = 11 + Top = 385 + Properties.ScrollBars = ssVertical + Lines.Strings = ( + 'eCondiciones') + TabOrder = 0 + Visible = False + Height = 57 + Width = 529 + end + object ePlazosEntrega: TMemo + Left = 11 + Top = 162 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 1 + end + object eFormaPago: TMemo + Left = 11 + Top = 37 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 2 + end + object eObservaciones: TMemo + Left = 11 + Top = 283 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 3 + end + end + object pagCapitulo: TTabSheet + Caption = 'Cap'#237'tulo' + ImageIndex = 1 + ExplicitWidth = 443 + ExplicitHeight = 208 + inline frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo + Left = 0 + Top = 0 + Width = 868 + Height = 555 + Align = alClient + BiDiMode = bdLeftToRight + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + ParentBiDiMode = False + ParentFont = False + TabOrder = 0 + ReadOnly = False + ExplicitWidth = 443 + ExplicitHeight = 208 + inherited ToolBar1: TToolBar + Width = 868 + Height = 24 + ExplicitWidth = 443 + inherited ToolButton4: TToolButton + Wrap = False + end + inherited ToolButton14: TToolButton + Left = 334 + Top = 0 + ExplicitLeft = 334 + ExplicitTop = 0 + end + inherited FontName: TJvFontComboBox + Left = 368 + Top = 0 + ExplicitLeft = 368 + ExplicitTop = 0 + end + inherited FontSize: TEdit + Left = 513 + Top = 0 + ExplicitLeft = 513 + ExplicitTop = 0 + end + inherited UpDown1: TUpDown + Left = 555 + Top = 0 + ExplicitLeft = 555 + ExplicitTop = 0 + end + inherited ToolButton13: TToolButton + Left = 572 + Top = 0 + ExplicitLeft = 572 + ExplicitTop = 0 + end + inherited ToolButton6: TToolButton + Left = 580 + Top = 0 + ExplicitLeft = 580 + ExplicitTop = 0 + end + inherited ToolButton7: TToolButton + Left = 614 + Top = 0 + ExplicitLeft = 614 + ExplicitTop = 0 + end + inherited ToolButton8: TToolButton + Left = 648 + Top = 0 + ExplicitLeft = 648 + ExplicitTop = 0 + end + inherited ToolButton12: TToolButton + Left = 682 + Top = 0 + ExplicitLeft = 682 + ExplicitTop = 0 + end + inherited ToolButton9: TToolButton + Left = 690 + Top = 0 + ExplicitLeft = 690 + ExplicitTop = 0 + end + inherited ToolButton10: TToolButton + Left = 724 + Top = 0 + ExplicitLeft = 724 + ExplicitTop = 0 + end + inherited ToolButton11: TToolButton + Left = 758 + Top = 0 + ExplicitLeft = 758 + ExplicitTop = 0 + end + end + inherited cxGrid: TcxGrid + Top = 50 + Width = 868 + Height = 505 + ExplicitWidth = 443 + ExplicitHeight = 136 + end + inherited TBXDock1: TTBXDock + Top = 24 + Width = 868 + ExplicitWidth = 443 + end + inherited cxLookupComboBox: TcxLookupComboBox + Style.IsFontAssigned = True + end + end + end end end diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.pas index 8d103d4a..30c1ee83 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.pas +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.pas @@ -5,17 +5,23 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewConfiguracionBase, cxControls, cxContainer, cxEdit, cxTextEdit, cxMemo, - cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls; + cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls, + ComCtrls, uCustomView, uViewDetallesBase, uViewConfiguracionCapitulo, + uViewDetallesDTO, uViewDetallesArticulos; type - TfrViewConfiguracionDocBano = class(TfrViewConfiguracionBase) + TfrViewConfiguracionDocBANO = class(TfrViewConfiguracionBase) + paginas: TPageControl; + pagNotas: TTabSheet; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; eCondiciones: TcxRichEdit; ePlazosEntrega: TMemo; eFormaPago: TMemo; eObservaciones: TMemo; - Label1: TLabel; - Label2: TLabel; - Label4: TLabel; + pagCapitulo: TTabSheet; + frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo; public class function GetViewClass : TClass; override; class function DarEtiqueta : String; override; @@ -24,15 +30,16 @@ type end; var - frViewConfiguracionDocBano: TfrViewConfiguracionDocBano; + frViewConfiguracionDocBANO: TfrViewConfiguracionDocBANO; implementation {$R *.dfm} { TfrViewConfiguracionDocBANO } -uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController; +uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController, +uBizDetallesPresupuestoCliente, uDetallesPresupuestoClienteController; -procedure TfrViewConfiguracionDocBano.CargarValores; +procedure TfrViewConfiguracionDocBANO.CargarValores; begin inherited; eFormaPago.Lines.Clear; @@ -43,25 +50,30 @@ begin eObservaciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_BANO); eCondiciones.Lines.Clear; eCondiciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_CONDICIONES_BANO); + + frViewConfiguracionCapitulo.Controller := TDetallesPresupuestoClienteController.Create; + frViewConfiguracionCapitulo.Detalles := (frViewConfiguracionCapitulo.Controller as IDetallesPresupuestoClienteController).BuscarCapitulo(TIPO_CAPITULO_B); end; -class function TfrViewConfiguracionDocBano.DarEtiqueta: String; +class function TfrViewConfiguracionDocBANO.DarEtiqueta: String; begin Result := 'Documentos baño'; end; -class function TfrViewConfiguracionDocBano.GetViewClass: TClass; +class function TfrViewConfiguracionDocBANO.GetViewClass: TClass; begin Result := TfrViewConfiguracionDocBANO; end; -procedure TfrViewConfiguracionDocBano.GuardarValores; +procedure TfrViewConfiguracionDocBANO.GuardarValores; begin inherited; AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_FORMA_PAGO_BANO, eFormaPago.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_PLAZOS_ENTREGA_BANO, ePlazosEntrega.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_OBSERVACIONES_BANO, eObservaciones.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_CONDICIONES_BANO, eCondiciones.Text); + + frViewConfiguracionCapitulo.Detalles.DataTable.ApplyUpdates; end; diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.dfm index d82d7887..0c2e41aa 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.dfm @@ -1,78 +1,224 @@ inherited frViewConfiguracionDocCocina: TfrViewConfiguracionDocCocina - Height = 496 - object Label1: TLabel [0] - Left = 11 - Top = 79 - Width = 76 - Height = 13 - Caption = 'Forma de pago:' - end - object Label2: TLabel [1] - Left = 11 - Top = 204 - Width = 90 - Height = 13 - Caption = 'Plazos de entrega:' - end - object Label4: TLabel [2] - Left = 11 - Top = 326 - Width = 75 - Height = 13 - Caption = 'Observaciones:' - end + Width = 792 + Height = 651 + ExplicitWidth = 792 + ExplicitHeight = 651 inherited Panel1: TPanel - Width = 530 - TabOrder = 2 + Width = 782 + TabOrder = 1 ExplicitWidth = 530 inherited Label3: TLabel - Width = 518 + Width = 770 + Visible = False end end inherited JvGradientHeaderPanel1: TJvGradientHeaderPanel - Width = 540 + Width = 792 LabelCaption = 'Configuraci'#243'n de los documentos de cocina' + TabOrder = 0 ExplicitWidth = 540 end - object eCondiciones: TcxRichEdit - Left = 11 - Top = 448 - Properties.ScrollBars = ssVertical - Lines.Strings = ( - 'eCondiciones') - TabOrder = 0 - Visible = False - Height = 57 - Width = 529 - end - object ePlazosEntrega: TMemo - Left = 11 - Top = 225 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 3 - end - object eFormaPago: TMemo - Left = 11 - Top = 100 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 4 - end - object eObservaciones: TMemo - Left = 11 - Top = 346 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 5 + object Paginas: TPageControl + Left = 0 + Top = 68 + Width = 792 + Height = 583 + ActivePage = pagNotas + Align = alClient + TabOrder = 2 + object pagNotas: TTabSheet + Caption = 'Notas' + ExplicitLeft = 3 + object Label1: TLabel + Left = 11 + Top = 23 + Width = 76 + Height = 13 + Caption = 'Forma de pago:' + end + object Label2: TLabel + Left = 11 + Top = 148 + Width = 90 + Height = 13 + Caption = 'Plazos de entrega:' + end + object Label4: TLabel + Left = 11 + Top = 270 + Width = 75 + Height = 13 + Caption = 'Observaciones:' + end + object ePlazosEntrega: TMemo + Left = 11 + Top = 169 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 0 + end + object eFormaPago: TMemo + Left = 11 + Top = 44 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 1 + end + object eObservaciones: TMemo + Left = 11 + Top = 290 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 2 + end + object eCondiciones: TcxRichEdit + Left = 11 + Top = 392 + Properties.ScrollBars = ssVertical + Lines.Strings = ( + 'eCondiciones') + TabOrder = 3 + Visible = False + Height = 57 + Width = 529 + end + end + object pagCapitulo: TTabSheet + Caption = 'Cap'#237'tulo' + ImageIndex = 1 + inline frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo + Left = 0 + Top = 0 + Width = 784 + Height = 555 + Align = alClient + BiDiMode = bdLeftToRight + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + ParentBiDiMode = False + ParentFont = False + TabOrder = 0 + ReadOnly = False + ExplicitWidth = 792 + ExplicitHeight = 651 + inherited ToolBar1: TToolBar + Width = 784 + ExplicitWidth = 784 + inherited FontSize: TEdit [1] + Left = 109 + Top = 0 + ExplicitLeft = 109 + ExplicitTop = 0 + end + inherited UpDown1: TUpDown [2] + Left = 151 + Top = 0 + ExplicitLeft = 151 + ExplicitTop = 0 + end + inherited ToolButton2: TToolButton [3] + Left = 168 + ExplicitLeft = 168 + end + inherited ToolButton3: TToolButton [4] + Left = 282 + ExplicitLeft = 282 + end + inherited ToolButton4: TToolButton [5] + Left = 337 + Wrap = False + ExplicitLeft = 337 + end + inherited ToolButton14: TToolButton [6] + Left = 393 + Top = 0 + Enabled = True + ExplicitLeft = 393 + ExplicitTop = 0 + end + inherited FontName: TJvFontComboBox [7] + Left = 427 + Top = 0 + ExplicitLeft = 427 + ExplicitTop = 0 + end + inherited ToolButton13: TToolButton + Left = 572 + Top = 0 + ExplicitLeft = 572 + ExplicitTop = 0 + end + inherited ToolButton6: TToolButton + Left = 580 + Top = 0 + ExplicitLeft = 580 + ExplicitTop = 0 + end + inherited ToolButton7: TToolButton + Left = 614 + Top = 0 + ExplicitLeft = 614 + ExplicitTop = 0 + end + inherited ToolButton8: TToolButton + Left = 648 + Top = 0 + ExplicitLeft = 648 + ExplicitTop = 0 + end + inherited ToolButton12: TToolButton + Left = 682 + Top = 0 + ExplicitLeft = 682 + ExplicitTop = 0 + end + inherited ToolButton9: TToolButton + Left = 690 + Top = 0 + ExplicitLeft = 690 + ExplicitTop = 0 + end + inherited ToolButton10: TToolButton + Left = 724 + Top = 0 + ExplicitLeft = 724 + ExplicitTop = 0 + end + inherited ToolButton11: TToolButton + Left = 758 + Top = 0 + ExplicitLeft = 758 + ExplicitTop = 0 + end + end + inherited cxGrid: TcxGrid + Width = 784 + Height = 483 + ExplicitTop = 50 + ExplicitWidth = 792 + ExplicitHeight = 601 + end + inherited TBXDock1: TTBXDock + Width = 784 + ExplicitTop = 24 + ExplicitWidth = 792 + end + inherited cxLookupComboBox: TcxLookupComboBox + Style.IsFontAssigned = True + end + end + end end end diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.pas index 05ed7f4e..faab8adf 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.pas +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.pas @@ -5,17 +5,23 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewConfiguracionBase, cxControls, cxContainer, cxEdit, cxTextEdit, cxMemo, - cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls; + cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls, + ComCtrls, uCustomView, uViewDetallesBase, uViewDetallesDTO, + uViewDetallesArticulos, uViewConfiguracionCapitulo; type TfrViewConfiguracionDocCocina = class(TfrViewConfiguracionBase) - eCondiciones: TcxRichEdit; - ePlazosEntrega: TMemo; - eFormaPago: TMemo; - eObservaciones: TMemo; + Paginas: TPageControl; + pagNotas: TTabSheet; Label1: TLabel; Label2: TLabel; Label4: TLabel; + ePlazosEntrega: TMemo; + eFormaPago: TMemo; + eObservaciones: TMemo; + eCondiciones: TcxRichEdit; + pagCapitulo: TTabSheet; + frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo; public class function GetViewClass : TClass; override; class function DarEtiqueta : String; override; @@ -23,14 +29,12 @@ type procedure GuardarValores; override; end; -var - frViewConfiguracionDocCocina: TfrViewConfiguracionDocCocina; - implementation {$R *.dfm} { TfrViewConfiguracionDocCocina } -uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController; +uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController, +uBizDetallesPresupuestoCliente, uDetallesPresupuestoClienteController; procedure TfrViewConfiguracionDocCocina.CargarValores; begin @@ -43,6 +47,9 @@ begin eObservaciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_COCINA); eCondiciones.Lines.Clear; eCondiciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_CONDICIONES_COCINA); + + frViewConfiguracionCapitulo.Controller := TDetallesPresupuestoClienteController.Create; + frViewConfiguracionCapitulo.Detalles := (frViewConfiguracionCapitulo.Controller as IDetallesPresupuestoClienteController).BuscarCapitulo(TIPO_CAPITULO_C); end; class function TfrViewConfiguracionDocCocina.DarEtiqueta: String; @@ -62,6 +69,8 @@ begin AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_PLAZOS_ENTREGA_COCINA, ePlazosEntrega.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_OBSERVACIONES_COCINA, eObservaciones.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_CONDICIONES_COCINA, eCondiciones.Text); + + frViewConfiguracionCapitulo.Detalles.DataTable.ApplyUpdates; end; diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.dfm index d0abaf32..3ed357e7 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.dfm @@ -1,78 +1,216 @@ inherited frViewConfiguracionDocElectrodomestico: TfrViewConfiguracionDocElectrodomestico - Height = 533 - object Label1: TLabel [0] - Left = 11 - Top = 79 - Width = 76 - Height = 13 - Caption = 'Forma de pago:' - end - object Label2: TLabel [1] - Left = 11 - Top = 204 - Width = 90 - Height = 13 - Caption = 'Plazos de entrega:' - end - object Label4: TLabel [2] - Left = 11 - Top = 326 - Width = 75 - Height = 13 - Caption = 'Observaciones:' - end + Width = 821 + Height = 564 + ExplicitWidth = 821 + ExplicitHeight = 564 inherited Panel1: TPanel - Width = 530 - TabOrder = 2 + Width = 811 + TabOrder = 1 ExplicitWidth = 530 inherited Label3: TLabel - Width = 518 + Width = 799 + Visible = False end end inherited JvGradientHeaderPanel1: TJvGradientHeaderPanel - Width = 540 + Width = 821 LabelCaption = 'Configuraci'#243'n de los documentos de electrodom'#233'sticos' + TabOrder = 0 ExplicitWidth = 540 end - object eCondiciones: TcxRichEdit - Left = 11 - Top = 448 - Properties.ScrollBars = ssVertical - Lines.Strings = ( - 'eCondiciones') - TabOrder = 0 - Visible = False - Height = 57 - Width = 529 - end - object ePlazosEntrega: TMemo - Left = 11 - Top = 225 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 3 - end - object eFormaPago: TMemo - Left = 11 - Top = 100 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 4 - end - object eObservaciones: TMemo - Left = 11 - Top = 346 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 5 + object Paginas: TPageControl + Left = 0 + Top = 68 + Width = 821 + Height = 496 + ActivePage = pagNotas + Align = alClient + TabOrder = 2 + object pagNotas: TTabSheet + Caption = 'Notas' + object Label1: TLabel + Left = 11 + Top = 20 + Width = 76 + Height = 13 + Caption = 'Forma de pago:' + end + object Label2: TLabel + Left = 11 + Top = 145 + Width = 90 + Height = 13 + Caption = 'Plazos de entrega:' + end + object Label4: TLabel + Left = 11 + Top = 267 + Width = 75 + Height = 13 + Caption = 'Observaciones:' + end + object eCondiciones: TcxRichEdit + Left = 11 + Top = 352 + Properties.ScrollBars = ssVertical + Lines.Strings = ( + 'eCondiciones') + TabOrder = 0 + Visible = False + Height = 57 + Width = 529 + end + object ePlazosEntrega: TMemo + Left = 11 + Top = 166 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 1 + end + object eFormaPago: TMemo + Left = 11 + Top = 41 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 2 + end + object eObservaciones: TMemo + Left = 11 + Top = 287 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 3 + end + end + object pagCapitulo: TTabSheet + Caption = 'Cap'#237'tulo' + ImageIndex = 1 + inline frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo + Left = 0 + Top = 0 + Width = 813 + Height = 468 + Align = alClient + BiDiMode = bdLeftToRight + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + ParentBiDiMode = False + ParentFont = False + TabOrder = 0 + ReadOnly = False + ExplicitWidth = 821 + ExplicitHeight = 564 + inherited ToolBar1: TToolBar + Width = 813 + Height = 24 + ExplicitWidth = 813 + ExplicitHeight = 24 + inherited ToolButton4: TToolButton + Wrap = False + end + inherited ToolButton14: TToolButton + Left = 334 + Top = 0 + ExplicitLeft = 334 + ExplicitTop = 0 + end + inherited FontName: TJvFontComboBox + Left = 368 + Top = 0 + ExplicitLeft = 368 + ExplicitTop = 0 + end + inherited FontSize: TEdit + Left = 513 + Top = 0 + ExplicitLeft = 513 + ExplicitTop = 0 + end + inherited UpDown1: TUpDown + Left = 555 + Top = 0 + ExplicitLeft = 555 + ExplicitTop = 0 + end + inherited ToolButton13: TToolButton + Left = 572 + Top = 0 + ExplicitLeft = 572 + ExplicitTop = 0 + end + inherited ToolButton6: TToolButton + Left = 580 + Top = 0 + ExplicitLeft = 580 + ExplicitTop = 0 + end + inherited ToolButton7: TToolButton + Left = 614 + Top = 0 + ExplicitLeft = 614 + ExplicitTop = 0 + end + inherited ToolButton8: TToolButton + Left = 648 + Top = 0 + ExplicitLeft = 648 + ExplicitTop = 0 + end + inherited ToolButton12: TToolButton + Left = 682 + Top = 0 + ExplicitLeft = 682 + ExplicitTop = 0 + end + inherited ToolButton9: TToolButton + Left = 690 + Top = 0 + ExplicitLeft = 690 + ExplicitTop = 0 + end + inherited ToolButton10: TToolButton + Left = 724 + Top = 0 + ExplicitLeft = 724 + ExplicitTop = 0 + end + inherited ToolButton11: TToolButton + Left = 758 + Top = 0 + ExplicitLeft = 758 + ExplicitTop = 0 + end + end + inherited cxGrid: TcxGrid + Top = 50 + Width = 813 + Height = 418 + ExplicitTop = 50 + ExplicitWidth = 821 + ExplicitHeight = 514 + end + inherited TBXDock1: TTBXDock + Top = 24 + Width = 813 + ExplicitTop = 24 + ExplicitWidth = 821 + end + inherited cxLookupComboBox: TcxLookupComboBox + Style.IsFontAssigned = True + end + end + end end end diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.pas index f91a6107..b23acaa8 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.pas +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.pas @@ -5,17 +5,23 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewConfiguracionBase, cxControls, cxContainer, cxEdit, cxTextEdit, cxMemo, - cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls; + cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls, + ComCtrls, uCustomView, uViewDetallesBase, uViewDetallesDTO, + uViewDetallesArticulos, uViewConfiguracionCapitulo; type TfrViewConfiguracionDocElectrodomestico = class(TfrViewConfiguracionBase) + Paginas: TPageControl; + pagNotas: TTabSheet; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; eCondiciones: TcxRichEdit; ePlazosEntrega: TMemo; eFormaPago: TMemo; eObservaciones: TMemo; - Label1: TLabel; - Label2: TLabel; - Label4: TLabel; + pagCapitulo: TTabSheet; + frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo; public class function GetViewClass : TClass; override; class function DarEtiqueta : String; override; @@ -30,7 +36,8 @@ implementation {$R *.dfm} { TfrViewConfiguracionDocELECTRODOMESTICO } -uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController; +uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController, +uBizDetallesPresupuestoCliente, uDetallesPresupuestoClienteController; procedure TfrViewConfiguracionDocElectrodomestico.CargarValores; begin @@ -43,6 +50,9 @@ begin eObservaciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_ELECTRODOMESTICO); eCondiciones.Lines.Clear; eCondiciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_CONDICIONES_ELECTRODOMESTICO); + + frViewConfiguracionCapitulo.Controller := TDetallesPresupuestoClienteController.Create; + frViewConfiguracionCapitulo.Detalles := (frViewConfiguracionCapitulo.Controller as IDetallesPresupuestoClienteController).BuscarCapitulo(TIPO_CAPITULO_E); end; class function TfrViewConfiguracionDocElectrodomestico.DarEtiqueta: String; @@ -62,6 +72,8 @@ begin AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_PLAZOS_ENTREGA_ELECTRODOMESTICO, ePlazosEntrega.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_OBSERVACIONES_ELECTRODOMESTICO, eObservaciones.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_CONDICIONES_ELECTRODOMESTICO, eCondiciones.Text); + + frViewConfiguracionCapitulo.Detalles.DataTable.ApplyUpdates; end; diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.dfm index 5d2a693c..3fb450d4 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.dfm +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.dfm @@ -1,79 +1,216 @@ inherited frViewConfiguracionDocObra: TfrViewConfiguracionDocObra - Width = 759 - Height = 564 - object Label1: TLabel [0] - Left = 11 - Top = 79 - Width = 76 - Height = 13 - Caption = 'Forma de pago:' - end - object Label2: TLabel [1] - Left = 11 - Top = 204 - Width = 90 - Height = 13 - Caption = 'Plazos de entrega:' - end - object Label4: TLabel [2] - Left = 11 - Top = 326 - Width = 75 - Height = 13 - Caption = 'Observaciones:' - end + Width = 824 + Height = 580 + ExplicitWidth = 824 + ExplicitHeight = 580 inherited Panel1: TPanel - Width = 749 - TabOrder = 2 + Width = 814 + TabOrder = 1 ExplicitWidth = 530 inherited Label3: TLabel - Width = 737 + Width = 802 end end inherited JvGradientHeaderPanel1: TJvGradientHeaderPanel - Width = 759 + Width = 824 LabelCaption = 'Configuraci'#243'n de los documentos de obra' + TabOrder = 0 ExplicitWidth = 540 end - object eCondiciones: TcxRichEdit - Left = 11 - Top = 448 - Properties.ScrollBars = ssVertical - Lines.Strings = ( - 'eCondiciones') - TabOrder = 0 - Visible = False - Height = 57 - Width = 529 - end - object ePlazosEntrega: TMemo - Left = 11 - Top = 225 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 3 - end - object eFormaPago: TMemo - Left = 11 - Top = 100 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 4 - end - object eObservaciones: TMemo - Left = 11 - Top = 346 - Width = 529 - Height = 90 - Ctl3D = True - ParentCtl3D = False - ScrollBars = ssVertical - TabOrder = 5 + object paginas: TPageControl + Left = 0 + Top = 68 + Width = 824 + Height = 512 + ActivePage = pagNotas + Align = alClient + TabOrder = 2 + object pagNotas: TTabSheet + Caption = 'Notas' + ExplicitLeft = 3 + object Label1: TLabel + Left = 11 + Top = 20 + Width = 76 + Height = 13 + Caption = 'Forma de pago:' + end + object Label2: TLabel + Left = 11 + Top = 145 + Width = 90 + Height = 13 + Caption = 'Plazos de entrega:' + end + object Label4: TLabel + Left = 11 + Top = 267 + Width = 75 + Height = 13 + Caption = 'Observaciones:' + end + object eCondiciones: TcxRichEdit + Left = 11 + Top = 368 + Properties.ScrollBars = ssVertical + Lines.Strings = ( + 'eCondiciones') + TabOrder = 0 + Visible = False + Height = 57 + Width = 529 + end + object ePlazosEntrega: TMemo + Left = 11 + Top = 166 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 1 + end + object eFormaPago: TMemo + Left = 11 + Top = 41 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 2 + end + object eObservaciones: TMemo + Left = 11 + Top = 287 + Width = 529 + Height = 90 + Ctl3D = True + ParentCtl3D = False + ScrollBars = ssVertical + TabOrder = 3 + end + end + object pagCapitulo: TTabSheet + Caption = 'Cap'#237'tulo' + ImageIndex = 1 + inline frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo + Left = 0 + Top = 0 + Width = 816 + Height = 484 + Align = alClient + BiDiMode = bdLeftToRight + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + ParentBiDiMode = False + ParentFont = False + TabOrder = 0 + ReadOnly = False + ExplicitWidth = 824 + ExplicitHeight = 580 + inherited ToolBar1: TToolBar + Width = 816 + Height = 24 + ExplicitWidth = 816 + ExplicitHeight = 24 + inherited ToolButton4: TToolButton + Wrap = False + end + inherited ToolButton14: TToolButton + Left = 334 + Top = 0 + ExplicitLeft = 334 + ExplicitTop = 0 + end + inherited FontName: TJvFontComboBox + Left = 368 + Top = 0 + ExplicitLeft = 368 + ExplicitTop = 0 + end + inherited FontSize: TEdit + Left = 513 + Top = 0 + ExplicitLeft = 513 + ExplicitTop = 0 + end + inherited UpDown1: TUpDown + Left = 555 + Top = 0 + ExplicitLeft = 555 + ExplicitTop = 0 + end + inherited ToolButton13: TToolButton + Left = 572 + Top = 0 + ExplicitLeft = 572 + ExplicitTop = 0 + end + inherited ToolButton6: TToolButton + Left = 580 + Top = 0 + ExplicitLeft = 580 + ExplicitTop = 0 + end + inherited ToolButton7: TToolButton + Left = 614 + Top = 0 + ExplicitLeft = 614 + ExplicitTop = 0 + end + inherited ToolButton8: TToolButton + Left = 648 + Top = 0 + ExplicitLeft = 648 + ExplicitTop = 0 + end + inherited ToolButton12: TToolButton + Left = 682 + Top = 0 + ExplicitLeft = 682 + ExplicitTop = 0 + end + inherited ToolButton9: TToolButton + Left = 690 + Top = 0 + ExplicitLeft = 690 + ExplicitTop = 0 + end + inherited ToolButton10: TToolButton + Left = 724 + Top = 0 + ExplicitLeft = 724 + ExplicitTop = 0 + end + inherited ToolButton11: TToolButton + Left = 758 + Top = 0 + ExplicitLeft = 758 + ExplicitTop = 0 + end + end + inherited cxGrid: TcxGrid + Top = 50 + Width = 816 + Height = 434 + ExplicitTop = 50 + ExplicitWidth = 824 + ExplicitHeight = 530 + end + inherited TBXDock1: TTBXDock + Top = 24 + Width = 816 + ExplicitTop = 24 + ExplicitWidth = 824 + end + inherited cxLookupComboBox: TcxLookupComboBox + Style.IsFontAssigned = True + end + end + end end end diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.pas index c900dd50..2b49508f 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.pas +++ b/Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocObra.pas @@ -5,17 +5,23 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewConfiguracionBase, cxControls, cxContainer, cxEdit, cxTextEdit, cxMemo, - cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls; + cxRichEdit, uViewBase, JvExControls, JvGradientHeaderPanel, StdCtrls, ExtCtrls, + ComCtrls, uCustomView, uViewDetallesBase, uViewDetallesDTO, + uViewDetallesArticulos, uViewConfiguracionCapitulo; type TfrViewConfiguracionDocObra = class(TfrViewConfiguracionBase) + paginas: TPageControl; + pagNotas: TTabSheet; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; eCondiciones: TcxRichEdit; ePlazosEntrega: TMemo; eFormaPago: TMemo; eObservaciones: TMemo; - Label1: TLabel; - Label2: TLabel; - Label4: TLabel; + pagCapitulo: TTabSheet; + frViewConfiguracionCapitulo: TfrViewConfiguracionCapitulo; public class function GetViewClass : TClass; override; class function DarEtiqueta : String; override; @@ -30,7 +36,8 @@ implementation {$R *.dfm} { TfrViewConfiguracionDocOBRA } -uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController; +uses uFactuGES_App, uConfiguracionController, uPresupuestosClienteController, +uBizDetallesPresupuestoCliente, uDetallesPresupuestoClienteController; procedure TfrViewConfiguracionDocObra.CargarValores; begin @@ -43,6 +50,9 @@ begin eObservaciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_OBRA); eCondiciones.Lines.Clear; eCondiciones.Text := AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_CONDICIONES_OBRA); + + frViewConfiguracionCapitulo.Controller := TDetallesPresupuestoClienteController.Create; + frViewConfiguracionCapitulo.Detalles := (frViewConfiguracionCapitulo.Controller as IDetallesPresupuestoClienteController).BuscarCapitulo(TIPO_CAPITULO_O); end; class function TfrViewConfiguracionDocObra.DarEtiqueta: String; @@ -62,6 +72,8 @@ begin AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_PLAZOS_ENTREGA_OBRA, ePlazosEntrega.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_OBSERVACIONES_OBRA, eObservaciones.Text); AppFactuGES.Configuracion.SetSettingAsString(teBD, CTE_CONDICIONES_OBRA, eCondiciones.Text); + + frViewConfiguracionCapitulo.Detalles.DataTable.ApplyUpdates; end; diff --git a/Source/Servidor/FactuGES_Server.dpr b/Source/Servidor/FactuGES_Server.dpr index 159770df..67ca116e 100644 --- a/Source/Servidor/FactuGES_Server.dpr +++ b/Source/Servidor/FactuGES_Server.dpr @@ -129,14 +129,14 @@ uses schRecibosClienteServer_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas', schFacturasProveedorClient_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas', schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas', - schArticulosClient_Intf in '..\Modulos\Articulos\Model\schArticulosClient_Intf.pas', - schArticulosServer_Intf in '..\Modulos\Articulos\Model\schArticulosServer_Intf.pas', schFamiliasClient_Intf in '..\Modulos\Familias\Model\schFamiliasClient_Intf.pas', schFamiliasServer_Intf in '..\Modulos\Familias\Model\schFamiliasServer_Intf.pas', schContratosClienteClient_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteClient_Intf.pas', schContratosClienteServer_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteServer_Intf.pas', schPresupuestosClienteClient_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas', - schPresupuestosClienteServer_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas'; + schPresupuestosClienteServer_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas', + schArticulosClient_Intf in '..\Modulos\Articulos\Model\schArticulosClient_Intf.pas', + schArticulosServer_Intf in '..\Modulos\Articulos\Model\schArticulosServer_Intf.pas'; {$R *.res} {$R ..\Servicios\RODLFile.res} diff --git a/Source/Servidor/FactuGES_Server.dproj b/Source/Servidor/FactuGES_Server.dproj index bee9d34f..fa3fa837 100644 --- a/Source/Servidor/FactuGES_Server.dproj +++ b/Source/Servidor/FactuGES_Server.dproj @@ -30,6 +30,8 @@ FalseTrueFalseTrueFalse2480FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.4.8.0FactuGES (Servidor)2.4.8.0miércoles, 09 de mayo de 2012 11:50 + + File C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl not found FactuGES_Server.dpr
diff --git a/Source/Servidor/FactuGES_Server.rc b/Source/Servidor/FactuGES_Server.rc index b8433627..4385bc1c 100644 --- a/Source/Servidor/FactuGES_Server.rc +++ b/Source/Servidor/FactuGES_Server.rc @@ -16,7 +16,7 @@ BEGIN VALUE "FileVersion", "2.4.8.0\0" VALUE "ProductName", "FactuGES (Servidor)\0" VALUE "ProductVersion", "2.4.8.0\0" - VALUE "CompileDate", "viernes, 18 de mayo de 2012 12:52\0" + VALUE "CompileDate", "martes, 22 de mayo de 2012 11:18\0" END END BLOCK "VarFileInfo" diff --git a/Source/Servidor/FactuGES_Server.res b/Source/Servidor/FactuGES_Server.res index f55f256e99b55c9ded17f906fa1f8c96067333d1..5f7ac673867a747477ba2d65b1b352544c3d446b 100644 GIT binary patch delta 68 zcmdn6jd24IMMN@Anj9Ia%$T>iHjIf+4Wa(9%ha4th4LlHv>Ln=ctgARiNgAs$# XIfX%Ka(9%hXc