From 0fd52dad6bff30e3ed512258a0e379be253e9be0 Mon Sep 17 00:00:00 2001 From: roberto Date: Wed, 28 May 2008 17:56:32 +0000 Subject: [PATCH] git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@243 f4e31baf-9722-1c47-927c-6f952f962d4b --- Source/Base/Utiles/uDataTableUtils.pas | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/Source/Base/Utiles/uDataTableUtils.pas b/Source/Base/Utiles/uDataTableUtils.pas index cfb8a1e8..5b6771ff 100644 --- a/Source/Base/Utiles/uDataTableUtils.pas +++ b/Source/Base/Utiles/uDataTableUtils.pas @@ -97,16 +97,21 @@ 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; - + if not ASource.Active then ASource.Open;