![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема Master-Detail (таблицы в Interbase) [D6, IB6.x]
Pavel_S © (2002-01-30 15:50:00)Есть Master таблица - TBL_EMPLOYEES и Detail - TBL_CARDS.
Использую IBQuery и IBUpdateSQL для каждой таблицы.
Datasource таблицы TBL_CARDS связан по полю EMPLOYEE_ID с главной таблицей TBL_EMPLOYEES.
При попытке сохранить добавленную запись в таблицу TBL_CARDS, сообщает что не указано значение employee_id, хотя как я знаю значение должно браться из таблицы указанной в datasource.
SQL строки в каждой IBUpdateSQL генерированы стандартно.
Прошу помочь с советом
Johnmen (2002-01-31 09:43:00) [1]За минувшие сутки осмыслил и кое-что попробовал.
...а вот :employee_id должен по идее браться из datasource...
на самомом деле он этого вовсе не должен !
и все значения параметров берутся из текущих значений полей НД !
посему ...другого выхода нет, разве как присваивать значение в beforepost...
Pavel_S (2002-01-31 06:04:00) [2]В том то и дело, что они берутся из data controls компонент, а вот :employee_id должен по идее браться из datasource.
Или другого выхода нет, разве как присваивать значение в beforepost ?
Johnmen (2002-01-30 17:56:00) [3]Если это для Deatil"ного НД , то непонятно, откуда же возьмутся значения параметров :LANGUAGE, :READING,
:WRITING, :SPEAKING, ведь предполагается, что они из Master"а,
а там их нет !
Pavel_S (2002-01-30 17:01:00) [4]Привожу пример InsertSQL, но из другой таблицы - сути не меняет
insert into TBL_FOREIGN_LANGUAGES
(FOREIGN_LANGUAGE_ID, EMPLOYEE_ID, LANGUAGE, READING, WRITING,
SPEAKING)
values
(:FOREIGN_LANGUAGE_ID, :EMPLOYEE_ID, :LANGUAGE, :READING,
:WRITING, :SPEAKING)
Johnmen (2002-01-30 16:56:00) [5]Если не в лом - напиши как выглядит InsertSQL в IBUpdateSQL для
Detail"ого IBQuery...
Pavel_S (2002-01-30 16:48:00) [6]Все поля обозначены и добавлены
Johnmen (2002-01-30 16:42:00) [7]Крайне интересная проблема !
К сожелению сейчас не могу поисследовать :(
(может быть надо в FielвEditor"е IBQuery обозначить поля
[в частности employee_id])...
Если добьешься положительного рез-та - сообщи !!!
Pavel_S (2002-01-30 16:26:00) [8]ДА все есть.
Смотрел значение параметра таблицы tbl_cards во время post, которое берется из tbl_employees значение имеется, но почему то не используется. Исправлял в InsertSQL :employee_id на :old_employee_id - все равно никакого результата - Пишет что значение employee_id не определено.
Johnmen (2002-01-30 16:21:00) [9]а в IBQuery, на которую <- datasource есть поле employee_id ?
Pavel_S (2002-01-30 16:09:00) [10]В каком виде надо указывать?
Там ведь по умолчанию стоит :employee_id - то есть параметр, а параметр вроде должен браться из datasource.
Как указать что значение брать именно из таблицы указанной в datasource ?
Johnmen (2002-01-30 16:04:00) [11]...значение должно браться из таблицы указанной в datasource...
Это не очевидно...
В запросах IBUpdateSQL на Detail в соответствующих местах надо все же указывать значение employee_id...