![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADO->MIDAS->ClientDataSet не пашет фильтр по BooleanField [D5, MSSQL]
clickmaker © (2004-04-01 13:04:00)Есть связка ADOQuery -> DataSetProvider -> ClientDataSet. Так вот, при задании в ClientDataSet фильтра типа 'Field = 1', 'Field = True', или 'Field = -1'на TBooleanField, он не срабатывает. Работает только 'Field <> 0'. Хотя, если посмотреть значение поля, то оно -1. При работе с БДЕ - все ок.
Johnmen (2004-04-01 14:04:00) [1]>clickmaker © (01.04.04 13:44) [4]
Видимо придется всё же делать <>, т.к. значение поля типа wordbool.
Кстати, в хелпе по wordbool написано про это <>
:)
clickmaker (2004-04-01 13:44:00) [2]
> Johnmen © (01.04.04 13:32) [3]
Да я в общем тоже :) Просто юзаю компонент для визуального конструирования фильтра PSCFilterBox, и он при задании фильтра типа "Поле равно Да" преобразует его в 'Field = true' (или 1, т.е. константу то еще можно изменить, а вот = на <> низзя)
Johnmen (2004-04-01 13:32:00) [3]>clickmaker © (01.04.04 13:30) [2]
Лично я ничего извратного в <> 0 не вижу :)
clickmaker (2004-04-01 13:30:00) [4]
> Johnmen © (01.04.04 13:25) [1]
Да это-то понятно. Но от этого не легче. Не хочется извращаться и задавать фильтр в виде <> 0
Johnmen (2004-04-01 13:25:00) [5]Я думаю так, что false это все биты сброшены (=0), true=not false это все биты инвертированы (=1), а это в смысле integer'а есть -1.