From b83d751cc1f65a020a0d9cc2f0ff39bb392bdb7f Mon Sep 17 00:00:00 2001 From: roberto Date: Wed, 28 May 2008 17:17:40 +0000 Subject: [PATCH] Arreglo en uDataTableUtils.pas para que el coydatatable, cuando la tabla origen no tenga nada seleccionado se aplique un filtro que nos deje la tabla vacia para su copia git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@230 c93665c3-c93d-084d-9b98-7d5f4a9c3376 --- Source/Base/Utiles/uDataTableUtils.pas | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/Source/Base/Utiles/uDataTableUtils.pas b/Source/Base/Utiles/uDataTableUtils.pas index 21b2c0e4..92c0a748 100644 --- a/Source/Base/Utiles/uDataTableUtils.pas +++ b/Source/Base/Utiles/uDataTableUtils.pas @@ -302,12 +302,17 @@ begin if ASource.Active then ASource.Close; - for i := 0 to AObj.SelectedRecords.Count - 1 do - begin - if (i > 0) then - ASource.Filter := ASource.Filter + ' or '; - ASource.Filter := ASource.Filter + '(ID = ' + IntToStr(AObj.SelectedRecords.Items[i]) + ')'; - end; + //Si no hay elemento seleccionados filtramos para que ATarget se quede vacia + if (AObj.SelectedRecords.Count = 0) then + ASource.Filter := ASource.Filter + '(ID = ' + IntToStr(ID_NULO) + ')' + //En caso contrario filtramos por los elementos seleccionados + else + for i := 0 to AObj.SelectedRecords.Count - 1 do + begin + if (i > 0) then + ASource.Filter := ASource.Filter + ' or '; + ASource.Filter := ASource.Filter + '(ID = ' + IntToStr(AObj.SelectedRecords.Items[i]) + ')'; + end; ASource.Filtered := True; end;