![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
LookupFields = КОШМАР на улицах Дельфи
Silver_ © (2003-03-21 09:48:00)Во-во имно кошмар:
Table1
LookupField1 -> Table2
LookupField2 -> Table3
LookupField3 -> Table2
LookupField4 -> Table3
Даже при 2 записях в Table1 если LookupFields имеют значения и таблицы откуда они
берут значения имеют МНОГО записей простой скрулинг Table1 привращается в:
Езда авто с ножным и ручным тормозом прчем привязаная к
составу поезда который едет в обратном направлении
это при том что таблица может(должна) содержать еще LookupFields и
вычисляемые поля ТОЖЕ :((((((((((((((((((((((((((((
Так как блин быть, как помочь бедному авто
P.S. Извеняюсь за емоции
les (2003-03-21 14:23:00) [1]LookupCache у тебя какое значение? Попробуй True.
Silver_ (2003-03-21 12:01:00) [2]
> Sergey13 ©
щюттник, он просто хочет иметь все (как можно больше) на екране бегать по записям, читать, писать в ОДНОЙ форме (All in One)
так и сделал тока тормозит :(
думаю на сем мона и закрыть тему
Johnmen (2003-03-21 11:47:00) [3]> 1. для просмотра SQL
> 2. для редактирования LookupFields
Вот это вполне разумно...:)
Sergey13 (2003-03-21 11:47:00) [4]2Silver_ (21.03.03 11:39)
>бос привередливый очень хочет All in One просматриваешь усё есть необходимость добавляешь или изменяешь чего-то
Крутой бос!!! И за какое время он просматривает (анализирует, добавляет, удаляет) 100000 записей? Ему и компьютер то наверное ни к чему. 8-)
Соловьев (2003-03-21 11:44:00) [5]
> а как t.id по твоему из списка выбирать
???
zacho (2003-03-21 11:43:00) [6]
> Silver_ (21.03.03 11:39)
На самом деле нужно правильнопроектировать приложение. Ибо тысячи записей на клиенте действительнонужны только в редких случаях, например для построения отчетов. В подавляющем большинстве случаев же достаточно правильно спроектировать интерфейс
Silver_ (2003-03-21 11:39:00) [7]
> Прикручивая к нему лукапы ты обеспечиваешь редактируемость
> всех записей этого датасета
а то как же, само сабой и редактирование тоже
т.е. бос привередливый очень хочет All in One просматриваешь усё есть необходимость добавляешь или изменяешь чего-то
> Соловьев ©
а как t.idпо твоему из списка выбирать
думаю не решаемо так :((
скорей всего нужно
- либо с тормозами оставить так
- лобо диференцировать
1. для просмотра SQL
2. для редактирования LookupFields
Соловьев (2003-03-21 11:03:00) [8]
select t1.name, t2,name2, t3.name3
from master t join table1 t1 on t.id=t1.id
join table2 on t.id=t2.id
join table3 on t.id=t3.id
Sergey13 (2003-03-21 11:02:00) [9]2Silver_ (21.03.03 10:42)
>а ты думаеш это происходит тока в гриде...
да про грид я так просто написал. Я говорил что ты открываешь датасет с сотней тысяч строк. Как ты его визуализируешь - это второй вопрос. Зачем тебе такой датасет. Прикручивая к нему лукапы ты обеспечиваешь редактируемость всех записейэтого датасета, и при этом, кстати, неявно тащишь на клиента все справочники. А это наверняка еще, может быть, тысячи записей. А зачем??? Ведь наверняка юзер изменит только 1-2 записи, ну сотню наконец, но не сотню же тысяч.
Silver_ (2003-03-21 10:57:00) [10]Всем смешно (рад за вас) но...
как ??? оставить выбор значения из списка и при этом все работало сносно (в смысле по скорости) БОЛЬШОЙ Вопрос, блин.
Anatoly Podgoretsky (2003-03-21 10:46:00) [11]Кошмар на улице Серебряной
Соловьев (2003-03-21 10:46:00) [12]2 Silver_ (21.03.03 10:28
через join
Silver_ (2003-03-21 10:42:00) [13]
> И тебе их надо видеть все и сразу в одном гриде?
а ты думаеш это происходит тока в гриде...
сделал форму на которой помастил
1 - DBEdit причем DataField не Lookupfield
1 - DBNavigator
делаем скрулинг (через DBNavigator никто не говорил про грид)
и ... ножной, ручник, поезд...
ничего ведь не меняется В DataSet LookupFields то остаются, и мне они нужны для выбора значения из списка
Silver_ (2003-03-21 10:28:00) [14]
> Соловьев ©
Ладно ну тогда как осуществить выбор из списка.
SQL выдаст его значение и усе...
Sergey13 (2003-03-21 10:17:00) [15]2Silver_ (21.03.03 09:59)
>a Table1 может содержать десятки а то и сотни тысяч записей
И тебе их надо видеть все и сразу в одном гриде? Тогда это точно =КОШМАР в ГОЛОВЕ.
Соловьев (2003-03-21 10:15:00) [16]использовать SQL
Silver_ (2003-03-21 10:14:00) [17]
> LookupFields = КОШМАР в ГОЛОВЕ.
это ты о чем
> Johnmen ©
Ты б советом помог а то так :))) мы все умеем
Johnmen (2003-03-21 10:10:00) [18]>Alexandr © (21.03.03 09:50)
>Sergey13 © (21.03.03 10:06)
:)))
Sergey13 (2003-03-21 10:06:00) [19]LookupFields = КОШМАР в ГОЛОВЕ.
Silver_ (2003-03-21 09:59:00) [20]
> Alexandr © (21.03.03 09:50)
> (убрать lookup)
Ага ичень интересно
ты предлагаешь вместо кодов писать само значение пола из Table2,
Table3 а если это поля а ля Char(200)
a Table1 может содержать десятки а то и сотни тысяч записей и таких полей скажем 5-10 то построение БД таким образом...
... да и сам не хуже знаеш не мне теба учить :)