I have use other db components in delphi, but I am having a particular issue using firedac.
Using Delphi10 Seattle, Sql Server 2012.
I have a firedac table pointing to a dataset.
that dataset has 3 fields.
i have this table joined to another table using masterdetail, on the reg_ID
a particular record exists in the data set, and is shown in this query:
select * from dbregval where id_css = 'PSI99'
order by reg_id
regID = 128000.
id_css = psi99
value string = '1'
in the program, I set the filter options to FOCaseInsensitve, foNoPartial
I have set this both at the component level and in code, before the table is opened.
when reg_id is 128006, a records is found (because id_CSS in db is PSI99)
(see file 128006.jpg)
however, when reg_id is 128000, no record is returned in firedac
ty is returning true)
(see file 128000.jpg)
This is the sql as reported by firedac monitor, when I refresh the table:
FROM dbo.dbRegVal A
WHERE (A.reg_id = :reg_id) AND
(((A.reg_id = :FD__WN_reg_id) AND (A.id_css < :FD__WN_id_css)) OR ((A.reg_id < :FD__WN_reg_id))) AND
(id_css = 'PSI99')
ORDER BY A.reg_id DESC, A.id_css DESC
so, the question is : how do I use case insensitive filters, using firedac?
and why is this not working? I'm new to firedac?
any idea what it is that I am missing?
(added test project source that demonstrates the issue)