Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Вниз

Компоненты для работы с клиент-серверными базами данных   Найти похожие ветки 

 
maratvg   (2004-02-19 12:47) [0]

Хочу узнать кто какими визуальными компонентами, аналогами TDBLookupCombobox, пользуется.
Интересует такая возможность компоненты: в выпадающем списке начинаем что-то искать (по первым буквам или по подстроке) и компонент не пытается вытянуть всю таблицу на клиента чтобы потом поискать через Locate, а переформировывает SQL-запрос, отправляет его серверу и отображает первые (сколько влезает в выпадающий список) записи.


 
Johnmen ©   (2004-02-19 13:05) [1]

В общем и целом. Таких компонент нету. Поскольку никому не приходило в голову максимально затормозить работу...:)
Впрочем, несложно написать самому и проверить жизнеспособность...


 
Anatoly Podgoretsky ©   (2004-02-19 13:17) [2]

A lookup тут причем?
Делай запрос только тогда когда у тебя не меньше трех букв в условии для запроса он и не будет пытаться вытянуть всю таблиц, а если делать по одной букве то будет очень много, но тоже не все.

А база данных у тебя есть?


 
maratvg   (2004-02-19 13:42) [3]

Johnmen>
а по-вашему гораздо лучше 10 тысяч записей из справочника тянуть, чтобы потом одну выбрать? Это не лезет в рамки клиент-серверной архитектуры.

Anatoly Podgoretsky>
Interbase.
Я считаю, что можно искать и по одной букве, ведь реально с сервера будет приходить максимум 10 записей (притом обычно это 1 числовое поле, одно строковое). В принципе, если пользователь - мазохист, то он может вообще не фильтровать записи, а по списку стрелкой вниз идти, но это не важно. Меня интересовало: может кто-то такое уже реализовывал, а если нет, то как из таких ситуаций можно выкрутиться?


 
Zacho ©   (2004-02-19 13:46) [4]

Гораздо лучше сделать интерфейс так, что бы пользователю и не приходило в голову выбирать все записи. Многоуровневые классификаторы там и т.п. Посмотри хотя бы на 1С.


 
Reindeer Moss Eater ©   (2004-02-19 13:49) [5]

Нормальная, кстати затея.
Если конечно не переформировывать запрос на каждое нажатие клавиши...


 
maratvg   (2004-02-19 13:59) [6]

Zacho>
Показывать полную версию справочника не всегда удобно.
Я предпочитаю такое интерфейсное решение: если LookupCombobox и рядом Label. Если пользователь лезет в комбобокс, то там справочник (пусть даже он древовидный должен быть) в линейном виде, если пользователь ткнул в Label, то вызывается полная версия справочника.

Reindeer Moss Eater> а какие идеи по переформировыванию запроса?


 
Romkin ©   (2004-02-19 14:10) [7]

У меня был случай, когда приходилось тянуть много: справичник ФИО. Ничего, это вопрос интерфейса, выглядит как закладки с буквами по алфавиту. Причем буквы - из таблицы, и триггера следят, как только на эту букву больше чем 2048 записей - делается сплит. Было, например, A, появилось Aa и Ан, например :))
Ну и поле быстрого поиска, сначала открывает вкладку, потом идет по ней.
Результат - мгновенный выбор, практически без задержек.


 
Reindeer Moss Eater ©   (2004-02-19 14:16) [8]

а какие идеи по переформировыванию запроса?

Да простые идеи.
Изначально видим грид (в который фетчится только влезаемое в него)
Ввод пользователя рисуется в инплэйс эдиторе (например в заголовке столбца).
На событие выхода из эдитора - переформирование секции WHERE и вперед, запрос на сервер.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.07 c
4-1074046926
EcoloRa
2004-01-14 05:22
2004.03.28
Работа с заголовком окна


3-1077522565
Nimnull
2004-02-23 10:49
2004.03.28
Аналогия


1-1077896458
Гиричев Руслан
2004-02-27 18:40
2004.03.28
Перемещение в TreeView


8-1060287687
Игорь Г.
2003-08-08 00:21
2004.03.28
Поворот изображения


1-1079010862
Goida
2004-03-11 16:14
2004.03.28
Ошибка из Excel. Не пойму почему.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский