Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Delphi: таблица с возможностью выбора условий 
V
    Опции темы
Solominka
Дата 15.4.2011, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 18.12.2009

Репутация: нет
Всего: нет



Vas, спасибо, понятно.

Цитата

Соответственным образом обрабатывая его в программе и получим внешний ключ.


Так вот КАК обработать и где? Меня в данный момент мучает этот вопрос очень.
А то он мне пока что в Pole2 цифры ID_p и выводит а не значения Poles =___=
PM MAIL   Вверх
superVad
Дата 15.4.2011, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 735
Регистрация: 6.4.2006
Где: Черкассы, Украина

Репутация: 3
Всего: 15



Цитата(Solominka @  15.4.2011,  14:24 Найти цитируемый пост)
Так вот КАК обработать и где? Меня в данный момент мучает этот вопрос очень.А то он мне пока что в Pole2 цифры ID_p и выводит а не значения Poles =___=

Значение Poles выводится в лукап поле созданном в программе, в таблице его физически не будет. В таблице будет хранится значение ID_p по которому лукап поле будет находить и отображать Poles.
Если СУБД smile не поддерживает внешние ключи, то физически можешь его не создавать.

Это сообщение отредактировал(а) superVad - 15.4.2011, 17:25
PM MAIL   Вверх
Solominka
Дата 15.4.2011, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 18.12.2009

Репутация: нет
Всего: нет



Собственно, я выяснила, как создавать внешние ключи...
Только вот где это внешний ключ хранится - не поняла.
Но не суть.
Я связала Pole2 из 1 таблицы с Id_p из второй.

Цитата

В таблице будет хранится значение ID_p по которому лукап поле будет находить и отображать Poles.


Только вот в настройках лукап-поля я указываю значение ID_p и как ключевое поле и как поле, из которого берутся результаты.

И у меня вместо содержимого Poles отображается содержимое  ID_p, что в принципе и логично.

В общем как сделать теперь, чтобы было как надо?  smile 
PM MAIL   Вверх
superVad
Дата 16.4.2011, 09:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 735
Регистрация: 6.4.2006
Где: Черкассы, Украина

Репутация: 3
Всего: 15



Цитата(Solominka @  15.4.2011,  18:38 Найти цитируемый пост)

Только вот в настройках лукап-поля я указываю значение ID_p и как ключевое поле и как поле, из которого берутся результаты.
И у меня вместо содержимого Poles отображается содержимое  ID_p, что в принципе и логично.
В общем как сделать теперь, чтобы было как надо?


Цитата(cat512 @  12.4.2011,  21:24 Найти цитируемый пост)

0)Добавляем новое поле FID типа интегер
1) FieldKind -> fkLookup
2) LookupDataset -> Form2.Query1
3) KeyFields -> FID
4) LookupKeyFields -> Id_p
5) lookuoResultField -> Poles

Вместо FID использовать Pole2 - только надо, что бы тип Pole2 был такой же как Id_p.

Возможно имеет смысл поменять название для Pole2  smile 
PM MAIL   Вверх
Solominka
Дата 16.4.2011, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 18.12.2009

Репутация: нет
Всего: нет



Делаю так:

Цитата

1) FieldKind -> fkLookup
2) LookupDataset -> Form2.Query1
3) KeyFields ->Pole2
4) LookupKeyFields -> Id_p
5) lookuoResultField -> Poles


Тип Pole2 был такой же как Id_p, а списка нет вообще =_= Никакого. Но и ошибок тоже не выдаёт.  smile 
PM MAIL   Вверх
cat512
Дата 16.4.2011, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 438
Регистрация: 20.3.2007

Репутация: 1
Всего: 15



Solominka, дык заполнять Pole2 кто будет? Дядя фёдор? Заполни это поле одним из значений Id_p, и лукап тебе отобразит значение поля Poles, второй таблицы, идентифицируемого с помощью первичного ключа Id_p. 
Что - то тебе объясняют на двух страницах  одно и тоже, а ты всё равно понять не можешь.
PS
Вообще, на своём опыте, редко встречал приложения с лукапами, как правило это очень древние приложения. В основном все пользуются класической схемой - первичные/вторичные ключи + SQL
PM MAIL   Вверх
Solominka
Дата 16.4.2011, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 18.12.2009

Репутация: нет
Всего: нет



Цитата

Solominka, дык заполнять Pole2 кто будет? Дядя фёдор? Заполни это поле одним из значений Id_p, и лукап тебе отобразит значение поля Poles, второй таблицы, идентифицируемого с помощью первичного ключа Id_p. 
Что - то тебе объясняют на двух страницах  одно и тоже, а ты всё равно понять не можешь.
PS
Вообще, на своём опыте, редко встречал приложения с лукапами, как правило это очень древние приложения. В основном все пользуются класической схемой - первичные/вторичные ключи + SQL 


Ну извините, что я такой тормоз тугодоходящий. Я бы и рада уже всё понять и сделать, да вот что-то не получается.  smile 

Уже больше 2-х недель вожусь со всем этим добром.

Ну мне вот нужны лукапы... что поделать. Я бы и рада без них обойтись, но врят ли выйдет.

Попыталась заполнить Pole2 через DatabaseDesktop. Ввелась только единичка.

Может там ещё что-то не так - не знаю уже. 

Для пущей ясности пркрепляю исходник.

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  ___________.rar 335,41 Kb
PM MAIL   Вверх
cat512
Дата 16.4.2011, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 438
Регистрация: 20.3.2007

Репутация: 1
Всего: 15



Цитата

Ну мне вот нужны лукапы... что поделать. Я бы и рада без них обойтись, но врят ли выйдет.

Не уверен на счёт этих тезисов, но как говорится "хозяин - барин"
PM MAIL   Вверх
cat512
Дата 16.4.2011, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 438
Регистрация: 20.3.2007

Репутация: 1
Всего: 15



Большая просьба - ничего не ломать в показанном примере, пока не разберёшься с механизмом работы

Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  prob.rar 336,24 Kb
PM MAIL   Вверх
cat512
Дата 16.4.2011, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 438
Регистрация: 20.3.2007

Репутация: 1
Всего: 15



Надеюсь с путями к БД разберёшься. Только подключай не свои файлы БД, а те которые лежат в архиве

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  prob.rar 336,24 Kb
PM MAIL   Вверх
Solominka
Дата 16.4.2011, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 18.12.2009

Репутация: нет
Всего: нет



cat512, спасибо конечно, но так и у меня работало... мне нужно чтобы поля FID НЕ БЫЛО вообще. и чтобы при этом при выборе варианта списка НЕ МЕНЯЛОСЬ ID.

Или так не возможно сделать?
PM MAIL   Вверх
cat512
Дата 16.4.2011, 20:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 438
Регистрация: 20.3.2007

Репутация: 1
Всего: 15



Цитата

спасибо конечно, но так и у меня работало

Именно так, работать у тебя не могло! Потому как не было кое-какого кода. Если ты поиграешься повнимательней, то ты увидишь, что достаточно поменять значение поля Fid, что бы подставилось значение лукапа
Цитата

и чтобы при этом при выборе варианта списка НЕ МЕНЯЛОСЬ ID.

Я смотрю ты мастер пудрить мозги, причём не только себе.  Ну ка, объясни русским языком - это как?
Без проблем, FID  мы выбрасываем. Дальше, объясни каким образом ты будешь идентифицировать тот самый "ВАРИАНТ" smile . И вообще, я не понимаю, почему у тебя меняется ID (первичный ключ таблицы).  Или мы говорим о совсем разных вещах?

Это сообщение отредактировал(а) cat512 - 16.4.2011, 20:28
PM MAIL   Вверх
Solominka
Дата 16.4.2011, 20:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 18.12.2009

Репутация: нет
Всего: нет



Цитата

Я смотрю ты мастер пудрить мозги, причём не только себе.  Ну ка, объясни русским языком - это как?
Без проблем, FID  мы выбрасываем. Дальше, объясни каким образом ты будешь идентифицировать тот самый "ВАРИАНТ" smile . И вообще, я не понимаю, почему у тебя меняется ID (первичный ключ таблицы).  Или мы говорим о совсем разных вещах?


Уфф... Ну в общем объясняю. Мне надо чтобы было лукап-поле. И чтбы при выборе какого-либо варианта из него, в других полях таблицы ничего не менялось... НИЧЕГО. В том числе и в ключевом поле тоже. Просто выпадающий список, берущийся из 2-й таблицы. Без всяких дополнительных полей ненужных.

Мне это и интересно: неужели так сделать нельзя, чтобы вариант в писке спокойно выбирался, но при этом содержимое остальных полей таблицы не коим образом не зависело от этого лукапа.... Это невозможно?
PM MAIL   Вверх
cat512
Дата 16.4.2011, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 438
Регистрация: 20.3.2007

Репутация: 1
Всего: 15



Д-я-я-д-я-я-я-я Фёдор! smile, ну так причём здесь ТИП (fkLookup) и Lookup поля датасеа! Мы всё это время говорили о разных весчах! Твоя задача описывается след. образом:
" Мне нужно встроить в ячейки поля(Pole2), таблицы просмотра данных (DBGRID), DB-AWARE Control (контрол доступа к данным), типа DBLookupCombobox"
Конечно такое можно сделать, но для тебя будет сложным заданием, да и такой интерфейс не приветствуется.
PM MAIL   Вверх
Solominka
Дата 16.4.2011, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 18.12.2009

Репутация: нет
Всего: нет



Цитата

Д-я-я-д-я-я-я-я Фёдор! smile, ну так причём здесь ТИП (fkLookup) и Lookup поля датасеа! Мы всё это время говорили о разных весчах! Твоя задача описывается след. образом:
" Мне нужно встроить в ячейки поля(Pole2), таблицы просмотра данных (DBGRID), DB-AWARE Control (контрол доступа к данным), типа DBLookupCombobox"
Конечно такое можно сделать, но для тебя будет сложным заданием, да и такой интерфейс не приветствуется. 


Ну и что мне теперь делать? !

Мне же надо как-то диплом написать =_=

Я ж откуда знала как оно всё называется... Я просто описала как мне надо, чтобы оно выглядело и работало. Вот и просила помощи - чтобы подсказали, как сделать лучше, чтобы было так как мне надо.

Это сообщение отредактировал(а) Solominka - 16.4.2011, 21:02
PM MAIL   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0890 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.