Показать сообщение отдельно
Старый 31.10.2007, 12:59   #3  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Цитата:
Сообщение от smoyk Посмотреть сообщение
Есть поле, на которое я накладываю фильтр. Надо отсеять дубликаты в этом поле в результирующем НД. Аналог DISTINCT в запросах. Подскажите, можно ли так сделать, или придется все значения выбирать (и получать) и разбиратся с ними уже на клиенте?
Получить результирующий набор за один шаг не получится. Если делать на клиенте, то можно создать ключ по этому полю, отсортировать рек по этому ключу. Затем итерациями
Рек.FIND('-');
Рек.SETRANGE(Поле, Рек.Поле);
Рек.FIND('+')
Рек.SETRANGE(Поле);
Рек.NEXT();
Рек.SETRANGE(Поле, Рек.Поле);
Рек.FIND('+')
ну и тд ... То есть получив стопку записей с одинаковым значением вашего Поля фильтровать по значению, переходить на последнюю запись, снимать фильтр и выполнять NEXT для получения нового значения Поля.... Оформить все это в цикле.