Проблемы с ADOQuery
Создал форму отчета.
- Положил на неё ADOQuery (назовем qTitle)
- Положил ReportTitle, а не него поля из qTitle - все работает
- Положил второй ADOQuery (назовем qDetails)
- Положил MaterData, привязал к qDetails, а потом на него поля из qDetails - вылазит ошибка "Invalid character value for cast specification"
- Убираю все поля с MaterData - та же ошибка
- Заменяю Dataset для пустого MaterData с qDetails на qTitle - все ОК
- Заменяю запрос для qDetails на запрос qTitle - та же ошибка
- Добавляю поле из qDetails на ReportTitle - та же ошибка, но уже на этапе формирования ReportTitle, а не MasterData
- Удаляю qDetails и создаю его копированием с qTitle (ctrl+c, ctrl+v) -
в список доступных DataSet для MasterData qDetails вообще не попадает.
Где грабли, на которые я наступил?
- Положил на неё ADOQuery (назовем qTitle)
- Положил ReportTitle, а не него поля из qTitle - все работает
- Положил второй ADOQuery (назовем qDetails)
- Положил MaterData, привязал к qDetails, а потом на него поля из qDetails - вылазит ошибка "Invalid character value for cast specification"
- Убираю все поля с MaterData - та же ошибка
- Заменяю Dataset для пустого MaterData с qDetails на qTitle - все ОК
- Заменяю запрос для qDetails на запрос qTitle - та же ошибка
- Добавляю поле из qDetails на ReportTitle - та же ошибка, но уже на этапе формирования ReportTitle, а не MasterData
- Удаляю qDetails и создаю его копированием с qTitle (ctrl+c, ctrl+v) -
в список доступных DataSet для MasterData qDetails вообще не попадает.
Где грабли, на которые я наступил?
Комментарии
Убрал из второго запроса (qDetails) параметр - стало работать.
Но без параметра, естественно, результаты меня не устраивают.
Что Интересно - в первом запросе ТОТ ЖЕ САМЫЙ параметр и в соответствие ему в обоих случаях назначена одна и та же переменная, которая передается из текста основной программы. Но в первом запросе все ОК, а во втором - вышеупомянутая ошибка.
Во втором запросе (qDetails) в соответствие параметру поставил не внешнюю переменную, а поле из первого (qTitle), которое специально сделал равной передаваемой внешней переменной - все заработало.
Вопрос разработчикам: почему так хитро? Неужели никто еще не жаловался?
В разбирательстве проблемы может поможет следующее:
в дизайнере отчетов я вижу поля второго запроса (DataTree секция Data), но не вижу поля первого. Почему - не знаю. Даже когда два запроса в двух ADOQuery одинаковы ситуация та же.