Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Фильтр по сложному значению / 8 сообщений из 8, страница 1 из 1
09.05.2010, 21:04
    #36619160
Roman4o
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
помогите как отфильтровать таблицу по указанным id?
то есть чтобы в гриде отображались записи с id 1 3 4 6 9 15 16 ..... (значения из выборки - не случайные, но закономерности нету)
и ещё как объявить массив размер которого заранее неизвестен, если конечно можно
...
Рейтинг: 0 / 0
09.05.2010, 21:33
    #36619174
reware
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
Roman4oпомогите как отфильтровать таблицу по указанным id?
то есть чтобы в гриде отображались записи с id 1 3 4 6 9 15 16 ..... (значения из выборки - не случайные, но закономерности нету)
и ещё как объявить массив размер которого заранее неизвестен, если конечно можно
Тэкс, очередной курсовик, что-ли ? Т.е. надо людЯм рассказывать про команду SET FILTER или SET KEY со всеми вытекающими. Доколе ?
...
Рейтинг: 0 / 0
09.05.2010, 22:39
    #36619221
Roman4o
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
курсовик
но я прошу ответа только на выше поставленный вопрос или хотя бы ссылку на рес где будет это описано
а потом тему можно на снос
...
Рейтинг: 0 / 0
09.05.2010, 23:29
    #36619264
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
Roman4oпомогите как отфильтровать таблицу по указанным id?
то есть чтобы в гриде отображались записи с id 1 3 4 6 9 15 16 ..... (значения из выборки - не случайные, но закономерности нету)
и ещё как объявить массив размер которого заранее неизвестен, если конечно можно
Насколько велик ряд id 1 3 4 6 9 15 16 ..... Если небольшой (до 25 значений) можно применить
SET FILTER TO INLIST(id,1, 3, 4, 6, 9, 15, 16)
Кстати, фраза "не случайные, но закономерности нету" внутренне противоречива.
Определить массив можно так
Declare aMassiv[1], а по мере получения данных о его размере (N) просто переопределить
Declare aMassiv[N]
...
Рейтинг: 0 / 0
10.05.2010, 07:46
    #36619355
zchvv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
Да хоть 100.

Код: plaintext
set filter to inlist(id, 1 ,  3 ,  4 ,  6 ,  9 ,  15 ,  16 ,......., 67 ) or inlist(id, 2 ,  5 ,  7 ,  8 ,  19 ,  18 ,  26 ,......., 97 ) or; inlist(id,..)
...
Рейтинг: 0 / 0
10.05.2010, 08:59
    #36619371
Roman4o
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
всё работает
всем биг спасибо
...
Рейтинг: 0 / 0
10.05.2010, 11:18
    #36619430
reware
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
Roman4o,
Помните, что по документации INLIST() не берёт более 25 параметров. Применима, когда точно уверен, что вот эта цепочка не превысит 25 значений. К примеру, задать INLIST() с парой сотен цифирек - увы и ах.
...
Рейтинг: 0 / 0
11.05.2010, 07:56
    #36620202
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по сложному значению
Если список кодов большой то лучше добавить их в курсор, проиндексировать и INDEXSEEK() в фильтре использовать.
Примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
create cursor tfilter (nVal i)
insert into tfilter (nVal) values ( 1 )
insert into tfilter (nVal) values ( 3 )
insert into tfilter (nVal) values ( 4 )
...
index on nVal tag nVal

sele MyTab
set filter to indexseek(Id, .F., 'tfilter', 'nVal')
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Фильтр по сложному значению / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]