diff --git a/Output/Debug/Cliente/Articulos_view.bpl b/Output/Debug/Cliente/Articulos_view.bpl index cf77748b..c5055636 100644 Binary files a/Output/Debug/Cliente/Articulos_view.bpl and b/Output/Debug/Cliente/Articulos_view.bpl differ diff --git a/Output/Debug/Cliente/FactuGES.exe b/Output/Debug/Cliente/FactuGES.exe index 7a232c30..efcb33e7 100644 Binary files a/Output/Debug/Cliente/FactuGES.exe and b/Output/Debug/Cliente/FactuGES.exe differ diff --git a/Output/Debug/Cliente/GUIBase.bpl b/Output/Debug/Cliente/GUIBase.bpl index ab0e8c14..532bda7f 100644 Binary files a/Output/Debug/Cliente/GUIBase.bpl and b/Output/Debug/Cliente/GUIBase.bpl differ diff --git a/Source/Base/GUIBase/uViewDetallesBase.pas b/Source/Base/GUIBase/uViewDetallesBase.pas index cc30b67d..90896a9f 100644 --- a/Source/Base/GUIBase/uViewDetallesBase.pas +++ b/Source/Base/GUIBase/uViewDetallesBase.pas @@ -163,6 +163,8 @@ type function darTipoLetraPorDefecto: TFont; virtual; function GetFocusedView : TcxGridDBTableView; virtual; function GetGrid : TcxGrid; virtual; + procedure SeleccionarRowActual; + public procedure BeginUpdate; procedure EndUpdate; @@ -236,9 +238,11 @@ begin if(FDetalles.RecordCount > 0) then begin //Selecciona en el grid el registro siguiente - if (AuxRow < cxGridView.DataController.RowCount-1) - then Inc(AuxRow) - else Dec(AuxRow); + if (AuxRow < cxGridView.DataController.RowCount-1) then + Inc(AuxRow) + else + Dec(AuxRow); + cxGridView.DataController.SelectRows(AuxRow,AuxRow); cxGridView.Controller.TopRowIndex := AuxTop; end; @@ -246,6 +250,8 @@ begin finally cxGridView.EndUpdate; end; + + SeleccionarRowActual; end; procedure TfrViewDetallesBase.actEliminarUpdate(Sender: TObject); @@ -611,6 +617,15 @@ begin FGridStatus := TcxGridStatus.Create(_FocusedView); end; +procedure TfrViewDetallesBase.SeleccionarRowActual; +begin + //Quitamos lo que hubiera seleccionado + cxGrid.ActiveView.DataController.ClearSelection; + with cxGrid.ActiveView.DataController do + if RowCount > 0 then + SelectRows(GetFocusedRowIndex,GetFocusedRowIndex); +end; + procedure TfrViewDetallesBase.SetController(const Value: IControllerDetallesBase); var AListaValores : TStringList; diff --git a/Source/Lib/GUIBase.dcp b/Source/Lib/GUIBase.dcp index 9f21d6e8..90fd9c2d 100644 Binary files a/Source/Lib/GUIBase.dcp and b/Source/Lib/GUIBase.dcp differ diff --git a/Source/Modulos/Articulos/Views/uViewDetallesArticulos.pas b/Source/Modulos/Articulos/Views/uViewDetallesArticulos.pas index 48eca5b7..339015b2 100644 --- a/Source/Modulos/Articulos/Views/uViewDetallesArticulos.pas +++ b/Source/Modulos/Articulos/Views/uViewDetallesArticulos.pas @@ -31,6 +31,7 @@ type procedure OnValidateReferencia(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); procedure OnValidateReferenciaProveedor(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); procedure CustomViewShow(Sender: TObject); + protected procedure AnadirArticulosInterno; virtual; function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; virtual; @@ -52,6 +53,8 @@ begin finally cxGridView.EndUpdate; end; + + SeleccionarRowActual; end; procedure TfrViewDetallesArticulos.AnadirArticulosInterno; @@ -76,12 +79,7 @@ end; procedure TfrViewDetallesArticulos.CustomViewShow(Sender: TObject); begin inherited; -{ - if DADataSource.DataTable.ReadOnly then - ActionListContenido.State := asSuspended - else - ActionListContenido.State := asNormal; -} + SeleccionarRowActual; end; procedure TfrViewDetallesArticulos.OnValidateReferencia(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); diff --git a/Source/Modulos/Lib/Articulos_view.dcp b/Source/Modulos/Lib/Articulos_view.dcp index ac5818a1..27673463 100644 Binary files a/Source/Modulos/Lib/Articulos_view.dcp and b/Source/Modulos/Lib/Articulos_view.dcp differ