From 18e07918cb86404f1ac1d94cfd587a79d9b01476 Mon Sep 17 00:00:00 2001 From: roberto Date: Tue, 8 Jan 2019 16:58:04 +0000 Subject: [PATCH] =?UTF-8?q?Se=20a=C3=B1ade=20la=20funcionalidad=20del=20nu?= =?UTF-8?q?evo=20tipo=20de=20presupuestos=20(arreglos)?= 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.AlonsoYSal_FactuGES/trunk@36 9a1d36f3-7752-2d40-8ccb-50eb49674c68 --- BD/BASEDATOS.FDB | Bin 68647936 -> 68694016 bytes Base/uDataModuleBase.dfm | 4 +- Base/uEditorBase.dfm | 4 +- Base/uEditorDBBase.dfm | 1 - Base/uEditorGrid.dfm | 4 +- Base/uViewGrid.dfm | 49 +++++++++- Base/uViewGrid.pas | 9 +- .../Servidor/srvAlbaranesCliente_Impl.dfm | 2 +- .../Almacenes/Servidor/srvAlmacenes_Impl.dfm | 2 +- .../Articulos/Servidor/srvArticulos_Impl.dfm | 2 +- .../Asientos/Servidor/srvAsientos_Impl.dfm | 2 +- .../Calendarios/Servidor/srvCitas_Impl.dfm | 2 +- .../Contactos/Servidor/srvContactos_Impl.dfm | 2 +- Modulos/Cuentas/Servidor/srvCuentas_Impl.dfm | 2 +- .../Servidor/srvFacturasCliente_Impl.dfm | 2 +- .../Servidor/srvFacturasProveedor_Impl.dfm | 2 +- .../Servidor/srvIntervalos_Impl.dfm | 2 +- .../Montajes/Servidor/srvMontajes_Impl.dfm | 2 +- Modulos/Pagos/Cliente/uEditorPagos.dfm | 2 - Modulos/Pagos/Servidor/srvPagos_Impl.dfm | 2 +- .../Servidor/srvPedidosProveedor_Impl.dfm | 2 +- .../Cliente/uViewDatosPresupuesto.pas | 1 + .../Cliente/uViewPresupuestos.dfm | 61 ++++++++++++ .../Cliente/uViewPresupuestos.pas | 89 +++++++++++++++++- .../Reglas/uBizPresupuestosCliente.pas | 1 + .../Servidor/srvPresupuestos_Impl.dfm | 2 +- Servidor/srvComisiones_Impl.dfm | 2 +- Servidor/srvConfiguracion_Impl.dfm | 2 +- 28 files changed, 228 insertions(+), 29 deletions(-) diff --git a/BD/BASEDATOS.FDB b/BD/BASEDATOS.FDB index d10a2d066fa44783acb8c055320f67a93d4faadf..9a04301fb284208a8a8ae14e2479b88820b31b47 100644 GIT binary patch delta 31799 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 Dx~>B3 delta 13198 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

YEECg(QlGL*6&SoWfJQ|sS-)_Wm*z#Z<5(Q zyh29keoNCY`F^-P^yB-of%m?M3fYvKz33^%+#E^&=muA)_&thd=GphD+|Y&cd%vT6 zpH_Dfw5fa8*tz+t#Ju#R_y?UxxzO9A-r~g!ZzN;sy_$= z5*k{+o}04{RLDv*i3SxkGD|&)6FePmWE<@zeU;Eu7Rp2a0Gk-z63|XSKw>#Ut0h4Z)DXczFjoM!o3ya&&z(|&iJ8y zIW(u!R8djNX>UmN_gM9>)7|B)^KyZ?m7HaU=AD<{1@64)7LV*Z;}-M0muW(XXo|IA zU{Ku^H=>0^Q?^+Py5@DyJuhbnZ{a*z5Z5L@&!#?#b|dds*(3|@3O~hw1!n>o#_Z~l)*22G-w?zLt*>vb2_$V1$`TvQ{gy%*Qj$a?g3N8rAa8mV%9 z@9o7@JC*j(Dz*?|G`1V=cA7>t20R4v}VF!A%(!vSWio z4Bk`X5b4{gG#owQY~Q=7@FpFR!dr5cvrtii1N!FPStx-5hVnWKZK|rfsSci{HxuWq z2{mRV-kk?+>h`;{w31#d2(7d!!Vma^01ya*lsB}}uCCN}7*ix?-%w+hvn;QBW3cLB zbyzR?nzbdE*1W|5LVy#5f_fkfgj2h=M5wC1cOC8pG${K~%9ph0d{*sspNLSO2=Ccb z5h{{;NPai+&LEJ85{M79-e!~yD>8peH^zCwN zopQ^+%ZnL0j@v6vq;dd5Qy3d-O}ASs#xVP!+Ue8llyj-m1ZGbxJ%r|`xmHlgn z?nF~(EoszW1g)zPmG3;vUv5RJ`l0^+xS`zd4ISiCwXBnStOTU!|qZCxuikgW_qwoHPPKhsUW`-jPn{c(oA>IB(oJ6$47gI z(etimnt#(jtZgvuXFQIv47y|tvdXuK67)%e?%KBVPHYzM&f?c6%N#TBUY9B`_bqg( zU~|nJmzrqKCZo-4T5Y(wV}VP(V#Yj%@*h+u$Lvq8_C7*$txhcFIbrt%(?xr~>`lL4 zb!SO5)UsOir=ddw*mQc16Mg9&n!*bC0G8%S4j&TD&0tz&GxNPJbk>{G9&ss$nMUR2 zW-Bthc1jj)QZsW?XO~JdFFfi}VdiwI*#rYML(G?G!XWJ|rExSfsMytvBnO&D=DAd7 z^DxyLWL~6AXj1Ilu4-G?i(1!%MvL`eidtAft(zs%sC6mqH1A1+oBFUUPx9oPHryOf zYmU&@GN@TQXJbGpRv8#Dpnu;%$;oLM$z~3%Ai`Wd-=(IQ3p%;fJ!Uq|($uV>=BJr? zWJK*o*l9zXn?KV=+}=>%W{syQZOu~Jr@^L+8r|Nvx++?ob3-Q{ZXHDI(R@ljtIfUX zHav+fqIM^WJ~Y~GAPraQ&Zg5)yp}q7X?m4;h>l9QZr|DFXJ%3Hs=1c-K&-ie8k=Yi trTybH=TUR+-oKY=Ba+M_YC=M7b4H>$);_eGqiNnwIPdIc2U=LY{{!aA|K|Vz diff --git a/Base/uDataModuleBase.dfm b/Base/uDataModuleBase.dfm index cff33cf..81e1c98 100644 --- a/Base/uDataModuleBase.dfm +++ b/Base/uDataModuleBase.dfm @@ -1,8 +1,8 @@ object dmBase: TdmBase OldCreateOrder = True OnCreate = DAClientDataModuleCreate - Left = 997 - Top = 222 + Left = 733 + Top = 187 Height = 368 Width = 494 object SmallImages: TPngImageList diff --git a/Base/uEditorBase.dfm b/Base/uEditorBase.dfm index 583f625..c7f67ff 100644 --- a/Base/uEditorBase.dfm +++ b/Base/uEditorBase.dfm @@ -1,6 +1,6 @@ object fEditorBase: TfEditorBase - Left = 666 - Top = 271 + Left = 312 + Top = 82 Width = 670 Height = 512 Caption = 'EditorBase' diff --git a/Base/uEditorDBBase.dfm b/Base/uEditorDBBase.dfm index d7a5f56..1e42db8 100644 --- a/Base/uEditorDBBase.dfm +++ b/Base/uEditorDBBase.dfm @@ -1,5 +1,4 @@ inherited fEditorDBBase: TfEditorDBBase - Left = 585 Caption = 'fEditorDBBase' PixelsPerInch = 96 TextHeight = 13 diff --git a/Base/uEditorGrid.dfm b/Base/uEditorGrid.dfm index 19e4c00..29d07cd 100644 --- a/Base/uEditorGrid.dfm +++ b/Base/uEditorGrid.dfm @@ -1,6 +1,6 @@ inherited fEditorGrid: TfEditorGrid - Left = 583 - Top = 195 + Left = 206 + Top = 122 Width = 714 Height = 485 Caption = 'fEditorGrid' diff --git a/Base/uViewGrid.dfm b/Base/uViewGrid.dfm index ccd52d0..4244028 100644 --- a/Base/uViewGrid.dfm +++ b/Base/uViewGrid.dfm @@ -6,7 +6,7 @@ inherited frViewGrid: TfrViewGrid Left = 0 Top = 102 Width = 443 - Height = 168 + Height = 142 Align = alClient TabOrder = 0 LookAndFeel.Kind = lfFlat @@ -67,12 +67,15 @@ inherited frViewGrid: TfrViewGrid Width = 439 inherited txtFiltroTodo: TcxTextEdit Left = 87 + Width = 273 end inherited edtFechaIniFiltro: TcxDateEdit Left = 87 + Width = 121 end inherited edtFechaFinFiltro: TcxDateEdit Left = 275 + Width = 121 end end inherited TBXAlignmentPanel1: TTBXAlignmentPanel @@ -84,6 +87,41 @@ inherited frViewGrid: TfrViewGrid end end end + object pnlAgrupaciones: TTBXDockablePanel + Left = 0 + Top = 244 + MinClientHeight = 8 + Align = alBottom + Caption = 'pnlAgrupaciones' + DockedHeight = 26 + FloatingWidth = 128 + FloatingHeight = 26 + SupportedDocks = [dkStandardDock, dkMultiDock] + TabOrder = 2 + Visible = False + object TBXAlignmentPanel1: TTBXAlignmentPanel + Left = 0 + Top = 0 + Width = 443 + Height = 26 + Align = alTop + Margins.Left = 10 + TabOrder = 0 + object TBXToolbar1: TTBXToolbar + Left = 10 + Top = 0 + Width = 433 + Height = 26 + Align = alTop + AutoResize = False + Caption = 'TBXToolbar1' + TabOrder = 0 + object TBXItem1: TTBXItem + Action = actQuitarAgrupaciones + end + end + end + end object DADataSource: TDADataSource Left = 368 Top = 96 @@ -114,7 +152,7 @@ inherited frViewGrid: TfrViewGrid PrinterPage.PageSize.Y = 297000 PrinterPage._dxMeasurementUnits_ = 0 PrinterPage._dxLastMU_ = 2 - ReportDocument.CreationDate = 42891.704888599540000000 + ReportDocument.CreationDate = 43463.336839328700000000 OptionsCharts.Transparent = True OptionsFormatting.SuppressBackgroundBitmaps = True OptionsOnEveryPage.Caption = False @@ -148,4 +186,11 @@ inherited frViewGrid: TfrViewGrid TextColor = clHighlightText end end + object ActionList2: TActionList + Left = 400 + Top = 360 + object actQuitarAgrupaciones: TAction + Caption = 'Quitar agrupaciones' + end + end end diff --git a/Base/uViewGrid.pas b/Base/uViewGrid.pas index cdadd28..078dced 100644 --- a/Base/uViewGrid.pas +++ b/Base/uViewGrid.pas @@ -11,7 +11,8 @@ uses DBGrids, JvComponent, JvFormAutoSize, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPrnDlg, - cxIntlPrintSys3, dxPSPrvwAdv, uViewFiltroBase; + cxIntlPrintSys3, dxPSPrvwAdv, uViewFiltroBase, TB2Item, TBX, TB2Toolbar, + TBXDkPanels, TB2Dock; type IViewGrid = interface(IViewBase) @@ -59,6 +60,12 @@ type cxStyleOdd: TcxStyle; cxStyleSelection: TcxStyle; frViewFiltroBase1: TfrViewFiltroBase; + pnlAgrupaciones: TTBXDockablePanel; + TBXAlignmentPanel1: TTBXAlignmentPanel; + TBXToolbar1: TTBXToolbar; + TBXItem1: TTBXItem; + ActionList2: TActionList; + actQuitarAgrupaciones: TAction; procedure cxGridViewDblClick(Sender: TObject); procedure cxGridViewDataControllerSortingChanged(Sender: TObject); procedure SelectionChanged(Sender: TcxCustomGridTableView); virtual; abstract; diff --git a/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm b/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm index 48f3c06..da9327f 100644 --- a/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm +++ b/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.dfm @@ -7,7 +7,7 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente ServiceSchema = schAlbaranesCliente ServiceAdapter = DABINAdapter Left = 681 - Top = 308 + Top = 296 Height = 463 Width = 347 object schAlbaranesCliente: TDASchema diff --git a/Modulos/Almacenes/Servidor/srvAlmacenes_Impl.dfm b/Modulos/Almacenes/Servidor/srvAlmacenes_Impl.dfm index 781d9e2..b7923cb 100644 --- a/Modulos/Almacenes/Servidor/srvAlmacenes_Impl.dfm +++ b/Modulos/Almacenes/Servidor/srvAlmacenes_Impl.dfm @@ -7,7 +7,7 @@ object srvAlmacenes: TsrvAlmacenes ServiceSchema = schAlmacenes ServiceAdapter = DABINAdapter Left = 332 - Top = 246 + Top = 237 Height = 300 Width = 300 object schAlmacenes: TDASchema diff --git a/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm b/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm index 1ea27e1..f153c96 100644 --- a/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm +++ b/Modulos/Articulos/Servidor/srvArticulos_Impl.dfm @@ -6,7 +6,7 @@ object srvArticulos: TsrvArticulos ServiceSchema = schArticulos ServiceAdapter = DABINAdapter Left = 740 - Top = 275 + Top = 265 Height = 300 Width = 300 object schArticulos: TDASchema diff --git a/Modulos/Asientos/Servidor/srvAsientos_Impl.dfm b/Modulos/Asientos/Servidor/srvAsientos_Impl.dfm index b8e0d64..03c1265 100644 --- a/Modulos/Asientos/Servidor/srvAsientos_Impl.dfm +++ b/Modulos/Asientos/Servidor/srvAsientos_Impl.dfm @@ -7,7 +7,7 @@ object srvAsientos: TsrvAsientos ServiceSchema = schAsientos ServiceAdapter = DABINAdapter Left = 843 - Top = 206 + Top = 198 Height = 300 Width = 300 object schAsientos: TDASchema diff --git a/Modulos/Calendarios/Servidor/srvCitas_Impl.dfm b/Modulos/Calendarios/Servidor/srvCitas_Impl.dfm index f93674c..c7e7997 100644 --- a/Modulos/Calendarios/Servidor/srvCitas_Impl.dfm +++ b/Modulos/Calendarios/Servidor/srvCitas_Impl.dfm @@ -7,7 +7,7 @@ object srvCitas: TsrvCitas ServiceSchema = schCitas ServiceAdapter = DABINAdapter Left = 826 - Top = 252 + Top = 243 Height = 184 Width = 245 object schCitas: TDASchema diff --git a/Modulos/Contactos/Servidor/srvContactos_Impl.dfm b/Modulos/Contactos/Servidor/srvContactos_Impl.dfm index 23ff7bb..504227b 100644 --- a/Modulos/Contactos/Servidor/srvContactos_Impl.dfm +++ b/Modulos/Contactos/Servidor/srvContactos_Impl.dfm @@ -8,7 +8,7 @@ object srvContactos: TsrvContactos ServiceSchema = schContactos ServiceAdapter = DABINAdapter Left = 1016 - Top = 381 + Top = 366 Height = 354 Width = 450 object schContactos: TDASchema diff --git a/Modulos/Cuentas/Servidor/srvCuentas_Impl.dfm b/Modulos/Cuentas/Servidor/srvCuentas_Impl.dfm index e01b1be..faea364 100644 --- a/Modulos/Cuentas/Servidor/srvCuentas_Impl.dfm +++ b/Modulos/Cuentas/Servidor/srvCuentas_Impl.dfm @@ -7,7 +7,7 @@ object srvCuentas: TsrvCuentas ServiceSchema = schCuentas ServiceAdapter = DABINAdapter Left = 912 - Top = 219 + Top = 211 Height = 300 Width = 300 object schCuentas: TDASchema diff --git a/Modulos/Facturas de cliente/Servidor/srvFacturasCliente_Impl.dfm b/Modulos/Facturas de cliente/Servidor/srvFacturasCliente_Impl.dfm index 33c5e7f..c184617 100644 --- a/Modulos/Facturas de cliente/Servidor/srvFacturasCliente_Impl.dfm +++ b/Modulos/Facturas de cliente/Servidor/srvFacturasCliente_Impl.dfm @@ -7,7 +7,7 @@ object srvFacturasCliente: TsrvFacturasCliente ServiceSchema = schFacturasCliente ServiceAdapter = DABINAdapter Left = 1167 - Top = 376 + Top = 361 Height = 490 Width = 347 object schFacturasCliente: TDASchema diff --git a/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm b/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm index de82379..56cdf40 100644 --- a/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm +++ b/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm @@ -7,7 +7,7 @@ object srvFacturasProveedor: TsrvFacturasProveedor ServiceSchema = schFacturasProveedor ServiceAdapter = DABINAdapter Left = 785 - Top = 464 + Top = 446 Height = 392 Width = 369 object schFacturasProveedor: TDASchema diff --git a/Modulos/Intervalos/Servidor/srvIntervalos_Impl.dfm b/Modulos/Intervalos/Servidor/srvIntervalos_Impl.dfm index 1994e57..12a2ab6 100644 --- a/Modulos/Intervalos/Servidor/srvIntervalos_Impl.dfm +++ b/Modulos/Intervalos/Servidor/srvIntervalos_Impl.dfm @@ -7,7 +7,7 @@ object srvIntervalos: TsrvIntervalos ServiceSchema = schIntervalos ServiceAdapter = DABINAdapter Left = 732 - Top = 250 + Top = 241 Height = 300 Width = 300 object schIntervalos: TDASchema diff --git a/Modulos/Montajes/Servidor/srvMontajes_Impl.dfm b/Modulos/Montajes/Servidor/srvMontajes_Impl.dfm index 160bd81..552a19e 100644 --- a/Modulos/Montajes/Servidor/srvMontajes_Impl.dfm +++ b/Modulos/Montajes/Servidor/srvMontajes_Impl.dfm @@ -6,7 +6,7 @@ object srvMontajes: TsrvMontajes ServiceSchema = schMontajes ServiceAdapter = DABINAdapter Left = 1064 - Top = 254 + Top = 244 Height = 356 Width = 300 object bpMontajes: TDABusinessProcessor diff --git a/Modulos/Pagos/Cliente/uEditorPagos.dfm b/Modulos/Pagos/Cliente/uEditorPagos.dfm index 0e3a302..b65ed97 100644 --- a/Modulos/Pagos/Cliente/uEditorPagos.dfm +++ b/Modulos/Pagos/Cliente/uEditorPagos.dfm @@ -1,6 +1,4 @@ inherited fEditorPagos: TfEditorPagos - Left = 345 - Top = 212 Caption = 'Lista de pagos' PixelsPerInch = 96 TextHeight = 13 diff --git a/Modulos/Pagos/Servidor/srvPagos_Impl.dfm b/Modulos/Pagos/Servidor/srvPagos_Impl.dfm index 3d4a0a5..d2220dd 100644 --- a/Modulos/Pagos/Servidor/srvPagos_Impl.dfm +++ b/Modulos/Pagos/Servidor/srvPagos_Impl.dfm @@ -7,7 +7,7 @@ object srvPagos: TsrvPagos ServiceSchema = schPagos ServiceAdapter = DABINAdapter Left = 568 - Top = 549 + Top = 527 Height = 300 Width = 300 object schPagos: TDASchema diff --git a/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm b/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm index b0a99b1..4659d58 100644 --- a/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm +++ b/Modulos/Pedidos a proveedor/Servidor/srvPedidosProveedor_Impl.dfm @@ -7,7 +7,7 @@ object srvPedidosProveedor: TsrvPedidosProveedor ServiceSchema = schPedidosProveedor ServiceAdapter = DABINAdapter Left = 732 - Top = 372 + Top = 358 Height = 459 Width = 300 object schPedidosProveedor: TDASchema diff --git a/Modulos/Presupuestos/Cliente/uViewDatosPresupuesto.pas b/Modulos/Presupuestos/Cliente/uViewDatosPresupuesto.pas index 0b8f7c5..8e93aa2 100644 --- a/Modulos/Presupuestos/Cliente/uViewDatosPresupuesto.pas +++ b/Modulos/Presupuestos/Cliente/uViewDatosPresupuesto.pas @@ -52,6 +52,7 @@ begin Clear; Add(TIPO_COCINA); Add(TIPO_BANO); + Add(TIPO_ARREGLOS); finally EndUpdate; end; diff --git a/Modulos/Presupuestos/Cliente/uViewPresupuestos.dfm b/Modulos/Presupuestos/Cliente/uViewPresupuestos.dfm index 014ccf6..c9fdecb 100644 --- a/Modulos/Presupuestos/Cliente/uViewPresupuestos.dfm +++ b/Modulos/Presupuestos/Cliente/uViewPresupuestos.dfm @@ -1,5 +1,9 @@ inherited frViewPresupuestos: TfrViewPresupuestos + Width = 685 + Height = 453 inherited cxGrid: TcxGrid + Width = 685 + Height = 325 RootLevelOptions.DetailTabsPosition = dtpTop OnActiveTabChanged = cxGridActiveTabChanged inherited cxGridView: TcxGridDBTableView @@ -116,9 +120,12 @@ inherited frViewPresupuestos: TfrViewPresupuestos end end inherited frViewFiltroBase1: TfrViewFiltroBase + Width = 685 inherited TBXDock1: TTBXDock + Width = 685 inherited TBXDockablePanel1: TTBXDockablePanel inherited dxLayoutControl1: TdxLayoutControl + Width = 681 inherited txtFiltroTodo: TcxTextEdit Width = 273 end @@ -126,9 +133,41 @@ inherited frViewPresupuestos: TfrViewPresupuestos Width = 121 end inherited edtFechaFinFiltro: TcxDateEdit + Left = 420 Width = 121 end end + inherited TBXAlignmentPanel1: TTBXAlignmentPanel + Width = 681 + inherited tbxBotones: TTBXToolbar + Width = 671 + end + end + end + end + end + inherited pnlAgrupaciones: TTBXDockablePanel + Top = 427 + Visible = True + inherited TBXAlignmentPanel1: TTBXAlignmentPanel + Width = 685 + inherited TBXToolbar1: TTBXToolbar + Width = 675 + object TBXSeparatorItem3: TTBXSeparatorItem + end + object TBXItem4: TTBXItem + Action = actCocinas + end + object TBXSeparatorItem2: TTBXSeparatorItem + end + object TBXItem3: TTBXItem + Action = actBanos + end + object TBXSeparatorItem1: TTBXSeparatorItem + end + object TBXItem2: TTBXItem + Action = actArreglos + end end end end @@ -147,6 +186,28 @@ inherited frViewPresupuestos: TfrViewPresupuestos object cxStyleAceptado: TcxStyle end end + inherited ActionList2: TActionList + inherited actQuitarAgrupaciones: TAction + Caption = 'Todos' + OnExecute = actQuitarAgrupacionesExecute + OnUpdate = actQuitarAgrupacionesUpdate + end + object actCocinas: TAction + Caption = 'Cocinas' + OnExecute = actCocinasExecute + OnUpdate = actCocinasUpdate + end + object actBanos: TAction + Caption = 'Ba'#241'os' + OnExecute = actBanosExecute + OnUpdate = actBanosUpdate + end + object actArreglos: TAction + Caption = 'Arreglos' + OnExecute = actArreglosExecute + OnUpdate = actArreglosUpdate + end + end object PngImageList: TPngImageList PngImages = < item diff --git a/Modulos/Presupuestos/Cliente/uViewPresupuestos.pas b/Modulos/Presupuestos/Cliente/uViewPresupuestos.pas index c44bbb3..7975bd1 100644 --- a/Modulos/Presupuestos/Cliente/uViewPresupuestos.pas +++ b/Modulos/Presupuestos/Cliente/uViewPresupuestos.pas @@ -12,7 +12,8 @@ uses cxLabel, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, cxIntlPrintSys3, dxPSCore, dxPScxCommon, dxPScxGridLnk, cxImage, cxImageComboBox, ImgList, - PngImageList, cxTextEdit, Grids, DBGrids, cxCurrencyEdit, uViewFiltroBase; + PngImageList, cxTextEdit, Grids, DBGrids, cxCurrencyEdit, uViewFiltroBase, + TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock; type IViewPresupuestos = interface(IViewGrid) @@ -42,6 +43,15 @@ type cxGridViewTIPO: TcxGridDBColumn; cxGridViewALBARAN: TcxGridDBColumn; cxGridViewOPCION: TcxGridDBColumn; + TBXItem2: TTBXItem; + TBXItem3: TTBXItem; + TBXItem4: TTBXItem; + actCocinas: TAction; + actBanos: TAction; + actArreglos: TAction; + TBXSeparatorItem1: TTBXSeparatorItem; + TBXSeparatorItem2: TTBXSeparatorItem; + TBXSeparatorItem3: TTBXSeparatorItem; procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: TcxGridLevel); procedure cxGridViewCODIGOCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var @@ -49,10 +59,20 @@ type procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + procedure actCocinasExecute(Sender: TObject); + procedure actBanosExecute(Sender: TObject); + procedure actArreglosExecute(Sender: TObject); + procedure actQuitarAgrupacionesExecute(Sender: TObject); + procedure actQuitarAgrupacionesUpdate(Sender: TObject); + procedure actCocinasUpdate(Sender: TObject); + procedure actBanosUpdate(Sender: TObject); + procedure actArreglosUpdate(Sender: TObject); private + FTipoPresupuesto: String; //Filtros relativos a la vista procedure AnadirFiltroSituaciones; procedure AnadirFiltroFechas; + procedure AnadirTipoPresupuestos; protected FPresupuestos: IBizPresupuestos; @@ -154,6 +174,7 @@ procedure TfrViewPresupuestos.AnadirOtrosFiltros; begin inherited; + AnadirTipoPresupuestos; AnadirFiltroSituaciones; AnadirFiltroFechas; @@ -166,9 +187,75 @@ end; procedure TfrViewPresupuestos.SetPresupuestos(const Value: IBizPresupuestos); begin + FTipoPresupuesto:= ''; FPresupuestos := Value; if Assigned(FPresupuestos) then DADataSource.DataTable := FPresupuestos.DataTable; end; +procedure TfrViewPresupuestos.AnadirTipoPresupuestos; +var + FFiltro : TcxFilterCriteriaItemList; +begin + FFiltro := AddFilterGrid(fboAnd); + + if (FTipoPresupuesto <> '') then + if (FTipoPresupuesto = TIPO_COCINA) then FFiltro.AddItem(cxGridViewTIPO, foEqual, TIPO_COCINA, TIPO_COCINA) + else if (FTipoPresupuesto = TIPO_BANO) then FFiltro.AddItem(cxGridViewTIPO, foEqual, TIPO_BANO, TIPO_BANO) + else if (FTipoPresupuesto = TIPO_ARREGLOS) then FFiltro.AddItem(cxGridViewTIPO, foEqual, TIPO_ARREGLOS, TIPO_ARREGLOS); +end; + +procedure TfrViewPresupuestos.actCocinasExecute(Sender: TObject); +begin + inherited; + FTipoPresupuesto := TIPO_COCINA; + RefrescarFiltro +end; + +procedure TfrViewPresupuestos.actBanosExecute(Sender: TObject); +begin + inherited; + FTipoPresupuesto := TIPO_BANO; + RefrescarFiltro +end; + +procedure TfrViewPresupuestos.actArreglosExecute(Sender: TObject); +begin + inherited; + FTipoPresupuesto := TIPO_ARREGLOS; + RefrescarFiltro +end; + +procedure TfrViewPresupuestos.actQuitarAgrupacionesExecute( + Sender: TObject); +begin + inherited; + FTipoPresupuesto := ''; + RefrescarFiltro +end; + +procedure TfrViewPresupuestos.actQuitarAgrupacionesUpdate(Sender: TObject); +begin + inherited; + (Sender as TAction).Enabled := (FTipoPresupuesto <> ''); +end; + +procedure TfrViewPresupuestos.actCocinasUpdate(Sender: TObject); +begin + inherited; + (Sender as TAction).Enabled := (FTipoPresupuesto <> TIPO_COCINA); +end; + +procedure TfrViewPresupuestos.actBanosUpdate(Sender: TObject); +begin + inherited; + (Sender as TAction).Enabled := (FTipoPresupuesto <> TIPO_BANO); +end; + +procedure TfrViewPresupuestos.actArreglosUpdate(Sender: TObject); +begin + inherited; + (Sender as TAction).Enabled := (FTipoPresupuesto <> TIPO_ARREGLOS); +end; + end. diff --git a/Modulos/Presupuestos/Reglas/uBizPresupuestosCliente.pas b/Modulos/Presupuestos/Reglas/uBizPresupuestosCliente.pas index 4e177fa..aed81a0 100644 --- a/Modulos/Presupuestos/Reglas/uBizPresupuestosCliente.pas +++ b/Modulos/Presupuestos/Reglas/uBizPresupuestosCliente.pas @@ -18,6 +18,7 @@ const TIPO_COCINA = 'Cocina'; TIPO_BANO = 'Baņo'; + TIPO_ARREGLOS = 'Arreglos'; type IBizDetallesPresupuesto = interface(IDetallesPresupuestos) diff --git a/Modulos/Presupuestos/Servidor/srvPresupuestos_Impl.dfm b/Modulos/Presupuestos/Servidor/srvPresupuestos_Impl.dfm index 36e091d..c84cfc8 100644 --- a/Modulos/Presupuestos/Servidor/srvPresupuestos_Impl.dfm +++ b/Modulos/Presupuestos/Servidor/srvPresupuestos_Impl.dfm @@ -7,7 +7,7 @@ object srvPresupuestos: TsrvPresupuestos ServiceSchema = schPresupuestos ServiceAdapter = DABINAdapter Left = 1198 - Top = 318 + Top = 306 Height = 359 Width = 328 object schPresupuestos: TDASchema diff --git a/Servidor/srvComisiones_Impl.dfm b/Servidor/srvComisiones_Impl.dfm index 1ca6b6f..87489be 100644 --- a/Servidor/srvComisiones_Impl.dfm +++ b/Servidor/srvComisiones_Impl.dfm @@ -6,7 +6,7 @@ object srvComisiones: TsrvComisiones ServiceSchema = schComisiones ServiceAdapter = DABINAdapter Left = 1113 - Top = 238 + Top = 229 Height = 300 Width = 300 object schComisiones: TDASchema diff --git a/Servidor/srvConfiguracion_Impl.dfm b/Servidor/srvConfiguracion_Impl.dfm index 1ed678e..1ac49e0 100644 --- a/Servidor/srvConfiguracion_Impl.dfm +++ b/Servidor/srvConfiguracion_Impl.dfm @@ -7,7 +7,7 @@ object srvConfiguracion: TsrvConfiguracion ServiceSchema = schConfiguracion ServiceAdapter = DABINAdapter Left = 1160 - Top = 135 + Top = 130 Height = 161 Width = 300 object schConfiguracion: TDASchema