Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.24;
Скачать: CL | DM;

Вниз

Проблема с запросом (LocalSQL,Paradox,TQuery & parameters)   Найти похожие ветки 

 
OneOfTheFew   (2003-04-04 11:46) [0]

Уважаемые Мастера!!!

Проблема следующая:

Две таблицы Header и Detail связаны отношением OneToMany через поля H_ID

В Datamodule есть компонент tbHeader (TTable)
Поля:
H_ID,
SumOfTransactions и т.д.
USER_ID // вычисляемое поле

и компонент quDetail (TQuery)

quDetail.DataSource:=dsHeader;

SQL примерно такой:


Select
(:USER_ID) as USER_ID,
D.Transact_ID,
D.HDate,
D.HCustomer_ID, и т.д.
From
Detail D
Where
D.H_ID=:H_ID


Такой quDetail.Active:=true работает.

Делаем следующие изменения:
Добавляем в tbHeader еще одно вычисляемое поле YetAnotherParameter,
а в тексте запроса компонента quDetail:


Select
(:USER_ID) as USER_ID,
(:YetAnotherParameter) as YetAnotherParameter,
D.Transact_ID,
D.HDate,
D.HCustomer_ID, и т.д.
From
Detail D
Where
D.H_ID=:H_ID


Теперь quDetail.Active:=true не работает. Говорит "Operation not applicable".
О чем идет речь?

Заранее благодарен за внимание и помощь!


 
Johnmen ©   (2003-04-04 12:35) [1]

Возможно, повторяю, возможно, параметр YetAnotherParameter не имеет значения, т.е. Null.


 
OneOfTheFew   (2003-04-04 12:49) [2]

To Johnmen

Это проверял , буквально сегодня перечитывал в хелпе: не, не то.
Причем эти грабли исправно работают и вслучае если передаваемые параметры являются физ. полями в табле, а не калками, как здесь.



 
Johnmen ©   (2003-04-04 12:58) [3]

Да, интересная проблема...
Если хочешь, могу привести свои соображения. Но сначала укажи, в какой последовательности получаются НД (Open).


 
Mike Kouzmine ©   (2003-04-04 13:01) [4]

Можно вклиниться?


 
Johnmen ©   (2003-04-04 13:04) [5]

Даже нужно !


 
Mike Kouzmine ©   (2003-04-04 13:11) [6]

Просто возник вопрос? А серьмяжная правда этого? Получать на выходе детеля поля с одинаковым значением? Я всегда придерживался правила - если поле в мастере одинаковое для всех деталей, то я его гашу, а тут наоборот. Если глупость сказал, прошу извинить.


 
Johnmen ©   (2003-04-04 13:17) [7]

>Mike Kouzmine © (04.04.03 13:11)
>А серьмяжная правда этого?

Знаешь, мне она тоже недоступна...:)


 
MsGuns ©   (2003-04-04 13:19) [8]

>Mike Kouzmine © (04.04.03 13:11)
Нет, не глупость. Но получение связующих филдов в курсоре детала и отображение их - это две большие разницы.
Например, если в детальном НД нет собственных UID, т.е. она является производной от нескольких других таблиц ? Мне нужны эти поля, например, для простоты создания запросов обновления этого детала.


 
Johnmen ©   (2003-04-04 13:24) [9]

>MsGuns © (04.04.03 13:19)

Не наш случай...


 
OneOfTheFew   (2003-04-04 15:32) [10]

To MsGuns & Mike Kouzmine

Уважаемый MsGuns меня правильно понял.
Но в конце-то концов, знает кто что это за грабли???


 
Mike Kouzmine ©   (2003-04-04 15:56) [11]

А как парамс офрмлены?
>MsGuns © (04.04.03 13:19)
Странно. Может надо курнуть, чтобы понять, но если не можешь однозначно идентифицировать запись по полю(ям) в мастере, то..
Не соображу. Timeout.



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

Текущий архив: 2003.04.24;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
6-77047
_Narayan_
2003-01-25 02:04
2003.04.24
Как принять сообщение отправленное : net send ......


1-76998
den303
2003-04-11 15:01
2003.04.24
Как отменить реакцию TListBox на колёсико мышки?


14-77096
Фикус
2003-04-04 11:26
2003.04.24
Оффшорное программирование: стОит ли заняться?


4-77248
slpro
2003-02-24 10:32
2003.04.24
мое окно топнее всех .Всегда.


14-77128
Феликс
2003-04-06 21:54
2003.04.24
Я весь в непонятках :)