Форум: "Базы";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];
ВнизЕсть Две Таблицы(DBF) и SQL как их обьеденить в DBGrid Найти похожие ветки
← →
Sliften (2003-04-12 04:09) [0]Есть Две Таблицы(DBF) и SQL 1(ID, ID_NAME,) 2(ID, FULLNAME,)
1 120 120 йогурт,,,
2 125 125 сервилат,,,,
SQL подставляет Полные имена из 2ой таблицы в 1ую как дополнительное поле которово физически в 1ой таблице не существует(FieldKind = fkLookup) Как можно добиться того чтобы в DBGrig можно было осущевстлять поиск или фильтрацыю по полю FULLNAME (//DBGrid выводит данные из 1ой таблицы)
Извините Что Так Подробно //Спасибо!!!
← →
ЮЮ (2003-04-12 06:22) [1]>как их обьеденить в DBGrid
Наличие FieldKind = fkLookup говорит о том, сто ты это уже сделал
>Как можно добиться того чтобы в DBGrig можно было осущевстлять поиск или фильтрацыю по полю FULLNAME
Поиск и фильтрация производятся в (над) DataSet-ом, отображаемом в DBGrid, а не в DBGride, судя по всему это - TTable.
Поиск первой записи - TTable.Locate, последующих - или перебором, или с помощью вспомогательного запроса + Locate по ключевому полю.
Фильтрация: TTable.Filter и TTable.Filtered.
Непосредственно грид не предоставляет пользовательского интерфейса для сортировки и поиска, так что всё равно прийдется использовать дополнительный DBLookupComboBox для задания условий, при этом пользователь будет выбирать из списка, подобному тому, что имеешь в Lookup-поле, а для получения "настоящего" значения сможешь использовать DBLookupComboBox.KeyValue. Если же для получени условий будешь использовать текущую запись, то в ней и так известно значение поля ID_NAME, хотя пользователь видит FULLNAME другой таблицы.
← →
Sliften (2003-04-12 14:25) [2]Да конечно поиск не в DBGrid а в TTable1 и методом Table1.Filter:= "FULLNAME = " + Edit1.text; // Но так не проходит //Спасибо!!!
← →
Sliften (2003-04-12 15:04) [3]Прошу Прощение Но Я упустил важную деталь. Во 2ой таблице идет групипрвка SQL по Полю(FULLNAME) 1 йогурт =
2 йогурт = йогурт (3 записи)
3 йогурт =
и значение ID теряется остается только (йогурт (3 записи))
Надеюсь Я не Ково не запутал //Спасибо!!!
← →
ЮЮ (2003-04-14 04:44) [4]Зря надеешься. Всех запутал.
Приведи полный текст запроса, ибо совсем не представляю, почему идет группировка справочника и как можно связать два запроса, не имея поля для связи
← →
Sliften (2003-04-14 09:43) [5]Извините что запутал. Но пока я тут всех путат попутно выяснил что существуют "живые запросы" по двум таблицам с возможностью редактирования. И так SQL
SELECT Prises.ID_ECK, Prises.ID_Prise, Prises.ID_Post, Prises.Prise, Prises.Rest, Prises.Zakaz, Prises.Summa, Eck.NAME, Eck.SINONEM(Eck.SINONEM и есть поле связи)
FROM "Prises.DB" Prises,"ECK.DB" ECK
Where Prises.ID_ECK = ECK.ID_ECK
и все это выводятся в DBGrid
Участвуют 2 таблицы значит на прямую в DBGrid редактироваь поле Zakaz "нельзя" помогите живым примером разрешить это редактирование
Кручусь около
RequestLive = true
UpdateSQL
но выстроить цыпочку не могу
← →
Соловьев (2003-04-14 09:50) [6]LocalSQL:
Multi-table queries
All queries that join two or more tables will produce a read-only result set.
← →
ЮЮ (2003-04-14 12:25) [7]И где здесь обещанная групипрвка ?
1)Т.к. записи не сортируются по Eck.NAME, то можно просто сделать Lookup поле.
2)UpdateSQL - "спасёт отца русской демократии", если не вертеться вокруг него, а указать созданный компонент в в св-ве UpdateObject запроса, а затем дважды кликнув по объекту сгенерировать нужные запросы для модификации Query
← →
Sliften (2003-04-14 21:52) [8]ЮЮ огромное СПАСИБО ("UpdateSQL" Все оказалось проще пареной репы "как всегда" и нечего было Вас путать) И спасибо за участие в других вопросах. Буду рад и Дальше вас Слышать!!!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c