Вопрос по синтаксису свойства Filter в Adotable

отредактировано 15:45 Раздел: FastReport 4.0
Добрый день, нуждаюсь в совете.
Имеется два ADOTable, которые соединены в связку мастер-детайл (ADOTable1 – мастер, ADOTable2 – детайл) связку организую по совпадению двух полей: ADOTable1.поле1= ADOTable2.поле1 и ADOTable1.поле2 = ADOTable2.поле2
При построении отчета с двумя уровнями все выдается отлично, но… мне требуется фильтровать данные из ADOTable2 по определенному условию.
Вопрос: как организовать в ADOTable2 в свойстве Filter выборку данных по условию ADOTable2.поле3 = NULL. Нигде не могу найти синтаксис или правила как написать условие, пытался забить «в лоб» в ADOTable2 или писать в скрипте (пишу на BasicScript) результат один: ошибка, нельзя вписывать фильтр в детайл ADOTable2.
Как тогда поступить ?

Комментарии

  • gpigpi
    отредактировано 15:45
    Всё, как и в Delphi:
    CUSTNO > 5000
    Т.е. в Вашем случае что-то типа
    FIELD3 is null
  • отредактировано 15:45
    gpi, спасибо за ответ. Синтаксис фильтра заработал (при проверке в других компонентах), но мой вопрос остается открытым: как отфильтровать значения в ADOTable2 который является детайлом, так как оказывается фильтровать значения детайла нельзя (сообщение о ошибке «Filter property cannot be used detail tables»)
  • gpigpi
    отредактировано 15:45
    Тогда используйте ADOQuery в ADOTable и пропишите условие фильтрации в where запроса
  • отредактировано 15:45
    gpi написал: »
    Тогда используйте ADOQuery в ADOTable и пропишите условие фильтрации в where запроса
    Вы имеете в виду, подключить к ADOTable вместо таблицы – ADOQuery, с определенным запросом? Если да, то такой вариант что-то не проходит. Или заменить ADOTable ADOQuery ?
  • gpigpi
    отредактировано 15:45
    ADOTable-Master, ADOQuery-Detail
    ADOQuery переоткрывайте в ADOTable.OnAfterScroll
  • отредактировано 15:45
    Добрый день, gpi, ваш совет пошел на пользу, спасибо! Возник следующий вопрос:
    Вывод данных происходит правильно, но как только ADOQuery-Detail возвращает пустое значение, дальнейшее формирование прекращается…, хотя строк выводимых ADOTable-Master еще должно быть много….
  • gpigpi
    отредактировано 15:45
    Приложите тестовый проект с ошибкой на основе локальной базы (mdb, dbf)
  • отредактировано 15:45
    gpi, спасибо за советы и помощь. У меня получилось, но сделал я чуть по другому: написал SQL код объединяющий нужные мне таблицы в одну особым образом и запихнул его в ADOQuery, а тут не составило труда расставить нужным образом бэнды и получить искомый результат.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.