Форум » [x]Harbour » Быстрый фильтр - это мечта[ ! | ? ] » Ответить

Быстрый фильтр - это мечта[ ! | ? ]

spair2k: Подскажите пожалуйста SET FILTER бывает быстрым? Может что-то можно сделать, чтобы BROWSE работал пошустрее?

Ответов - 26, стр: 1 2 All

Петр: spair2k пишет: Подскажите пожалуйста SET FILTER бывает быстрым? Почему бы и нет если записей не много и условие фильтрации простое. Как правило, я лично редко использую SET FILTER - индексация с условием, set scope, временные пользовательские индексы и т.п. в зависимости от задачи.

SADSTAR2: В Клиппере использовал собственные браузерные блоки кода bGoTop, bSkip, bGpBottom в зависимости от конкретной задачи. В Харборе этот вопрос не смотрел за ненадобностью.

Andrey: SET FILTER (с индексом, хотя бы по одному условию) в хХарборе медленей на порядок, чем в Клипере. Почему, я не знаю. Мне пришлось под хХарбором переделывать все эти SET FILTER на "Условную индексацию" ( быстрей выходит).


Dima: Andrey пишет: SET FILTER (с индексом, хотя бы по одному условию) в хХарборе медленей на порядок, чем в Клипере Юзай ADS (с индексом по одному из условий) и будет быро ;)

spair2k: Петр пишет: Как правило, я лично редко использую SET FILTER - индексация с условием, set scope, временные пользовательские индексы и т.п. в зависимости от задачи. Я не большой специалист в языке, но мне казалось, что проиндексировать таблицу открытую в SHARED режиме без прав на исключительность нельзя, я чего-то путаю? Задача требует разделенного доступа нескольких клиентов. временные пользовательские индексы В это меня заинтересовало...

Петр: spair2k пишет: проиндексировать таблицу открытую в SHARED режиме без прав на исключительность нельзя, я чего-то путаю? Вообще-то SET EXCLUSIVE ON требуют команды REINDEX, PACK и ZAP В это меня заинтересовало... Еще раз перечитайте справку по команде INDEX, обратите внимание на предложения CUSTOM и TEMPORARY.

Andrey: spair2k пишет: В это меня заинтересовало... Каждый юзер может делать выборку по открытой базе ! Примерно так: nAllRecords := LASTREC() y:=ROW() ; x:= COL() cIndex := "STR(KCity)+STR(KStreet)+DOM+KVARTIRA" cFileIndex := "C:\TEMP\index-tmp.cdx" cFilter := "KCity == 101 .AND. KStreet == 22 .AND. DELETED()=.F." INDEX ON &cIndex TAG (cTag) TO (cFileIndex) ; EVAL { || DevPos( y, x+3 ) , DevOutPict( Int( RECNO()/nAllRecords*100 ), "999%" ) } ; FOR &cFilter Думаю, что разъяснять подробно ненужно .....

spair2k: Петр пишет: TEMPORARY Подскажите пожалуйста, а где найти информацию по этому предложению? Я смотрел описание команды INDEX и в документации по Harbour и по xHarbour и там одно и то же, но этого предложения нет... :( INDEX ON <indexExpr> ; [TAG <cIndexName>] ; [TO <cIndexFile>] ; [FOR <lForCondition>] ; [WHILE <lWhileCondition>] ; [ALL] ; [NEXT <nNumber>] ; [RECORD <nRecNo>] ; [REST] ; [EVAL <bBlock>] ; [EVERY <nInterval>] ; [UNIQUE] ; [ASCENDING|DESCENDING] ; [USECURRENT] ; [ADDITIVE] ; [CUSTOM] ; [NOOPTIMIZE] может есть свежая дока? подскажите откуда можно взять? я еще не научился С-шный код, как документацию использовать... :(

Dima: spair2k Посмотри Std.ch

Петр: TEMPORARY If this option is specified, a temporary index is created which is automatically destroyed when the index is closed. The temporary index may be created in memory only or in a temporary file. This lies in the responsibility of the RDD used for index creation. spair2k пишет: может есть свежая дока? подскажите откуда можно взять? Я уже писал на этом форуме о методе получения доки, ничего не поменялось. Идете на xHarbour.com, регистрируетесь и качаете xHarbourBuilder-DEMO-May2009-53.exe ~30 Mb После установки изучаете \xHB\doc\xHarbour Language Reference Guide.chm

Dima: Петр пишет: После установки изучаете \xHB\doc\xHarbour Language Reference Guide.chm Хочешь сказать что она полная и не обрезанная ?

Петр: Dima пишет: Хочешь сказать что она полная и не обрезанная ? Нет, конечно могло бы быть и получше Но без демо прибамбасов и в хозяйстве вполне пригодится. Версия 1.1

Dima: Петр Есть полная 1.1 надо ?

Петр: Для коллеции Из серии мечты идиота: давно собираюсь начать делать документацию Harbour, точнее справочник по функциям или еще точнее краткий обзор hbextern.ch. На русском конечно. Вернее уже начал разделы - i18n, hash, уже почти готовы, начал MT, описание утилит. Но дело идет туго - все упирается или в собственную лень или пробелы в знаниях

Dima: Петр http://files.mail.ru/XD7D4Y pass clipper

Петр: Спасибо, Дима! Оказывается в сборке xHarbourBuilder-DEMO-May2009-53 лежит таки "полная" версия справки.

Dima: Петр пишет: Оказывается в сборке xHarbourBuilder-DEMO-May2009-53 лежит таки "полная" версия справки Похоже автор лоханулся :) Молчу уже про большуюююю дыру на сайте (выкачать можно все не демо)

Andrey: Dima пишет: выкачать можно все не демо Я там слабо оринтируюсь.... что нужно выкачивать ?

Петр: Andrey пишет: что нужно выкачивать ? А зачем?

Dima: Andrey пишет: Я там слабо оринтируюсь.... что нужно выкачивать ? Оно тебе нужно ? ;) Доку я выложил , сливай. PS Уточняю, слить можно все коммерческие продукты. Но нужно знать ,как поиметь пароль на инсталляцию , но это уже другая история.... + при сливе нужно иметь анонимный прокси на всякий случай

Andrey: Да хочу посмотреть чем отличается релиз 2007 года от текущего 2009. В прошлом были ошибки - много. А так вообще хочу Visual - среду, переходить потихоньку на него или Xaler. Короче для пробы, но чтоб не было дурацких ДЕМО-сообщений. Для продажи программ, все равно придется покупать, а покупать без пробы нормальной нет желания.

Dima: Andrey пишет: покупать без пробы нормальной нет желания Для пробы вполне хватает и демо версии , не гони волну :) PS По понятным причинам ссылок я тут давать не буду !!!

Петр: А период 2007-2009 вы из жизни почему вычеркнули? Visual среда сырая - сегодня у меня два раза завалилась на ровном месте и без каких-либо усилий с моей стороны.

TimTim: По подсказке Петра периодически скачиваю xHarbourBuilder-DEMO-*.exe. Похоже, что файл xHarbour Language Reference Guide.chm не меняется с июня 2007 года, но дока вполне может использоваться в работе. Я "прикрутил" её к редактору в xMate и имею контексно-зависимую подсказку Петр пишет: Из серии мечты идиота: давно собираюсь начать делать документацию Harbour, точнее справочник по функциям или еще точнее краткий обзор hbextern.ch. На русском конечно. Вернее уже начал разделы - i18n, hash, уже почти готовы, начал MT, описание утилит. Жалко, что намерения при уточнении сильно сужаются Но в любом случае ваша работа, мне кажется, будет очень нужной и полезной. "Дорогу осилит идущий!"

Петр: TimTim пишет: Жалко, что намерения при уточнении сильно сужаются Ну, что поделать. Но хочу уточнить в Harbour hbextern.ch содержит ВСЕ (ну или почти все) встроенные функции языка. Так что фактически справочник по функциям Harbour == краткий обзор hbextern.ch "Дорогу осилит идущий!" Спасибо за моральную поддержку

PSP: Петр пишет: фактически справочник по функциям Harbour == краткий обзор hbextern.ch Спасибо! Очень ценная информация! :)



полная версия страницы