Форум: "Начинающим";
Текущий архив: 2008.12.21;
Скачать: [xml.tar.bz2];
ВнизНе срабатывает кейсоинсенситивность в tDataSet.Locate Найти похожие ветки
← →
Семен Кевларвестов (2008-11-05 02:28) [0]Доброй ночи!
Есть некое приложение, в котором осуществляется поиск по открытому датасету методом Locate примерно так: TDataset.Locate("SomeField",SomeValue,[loCaseInsensitive, loPartialKey]). (При этом значение в SomeValue приводится к верхнему регистру, впрочем, это не важно т.к.к строкив датасете могут быть какие угодно). И вот такая загадочная вещь: если в строке есть буквы "ч" или "я" - не срабатывает кейсоинсенситивность.
Не подскажите ли, пожалуйста, как с этим можно бороться?
← →
Anatoly Podgoretsky © (2008-11-05 07:43) [1]> Семен Кевларвестов (05.11.2008 2:28:00) [0]
Отказаться от БДЕ
← →
Vlad Oshin © (2008-11-05 10:06) [2]
> если в строке есть буквы "ч" или "я"
а если Ч и Я, то работает?
← →
Anatoly Podgoretsky © (2008-11-05 10:32) [3]> Vlad Oshin (05.11.2008 10:06:02) [2]
Не работает, а вот если <ч> и <Я>, то работает?
← →
Vlad Oshin © (2008-11-05 10:41) [4]Просто есть мысль приводить в верхний регистр, раз они такие заколдованные
← →
Anatoly Podgoretsky © (2008-11-05 12:24) [5]> Vlad Oshin (05.11.2008 10:41:04) [4]
Чем и когда и зачем портить базу?
← →
Семен Кевларвестов (2008-11-05 23:58) [6]
> Просто есть мысль приводить в верхний регистр, раз они такие
> заколдованные
А там так и сделано: идет поиск в верхнем регистре. А данные для которых поиск важен (к примеру ФИО) так в базу и вносятся, в верхнем регистре. Просто нужно было кое-что прикрутить (в частности, стал необходим поиск по другим данных, которые могут хранится и в нижнем, и в смешанном регистре) и вылезла эта особенность.
> Отказаться от БДЕ
Я правильно понимаю, что если продолжать работать через BDE - решения нет? (Убрать его никто, естественно, не даст).
← →
Германн © (2008-11-06 02:48) [7]
> Я правильно понимаю, что если продолжать работать через
> BDE - решения нет? (Убрать его никто, естественно, не даст).
>
А Х.з. Может и есть решения. Но уверенности в них нет никакой! Уж сколько было на многих форумах примеров, но никто не смог выдать "решения с гарантией"!
← →
clickmaker © (2008-11-06 12:58) [8]> как с этим можно бороться
а если искать тупо перебором с AnsiStartsText, например?
← →
Семен Кевларвестов (2008-11-09 00:41) [9]
> Германн © (06.11.08 02:48) [7]
>
> Уж сколько было на многих форумах примеров, но никто не
> смог выдать "решения с гарантией"!
эммм.. а можно хотя бы одну ссылку на подобную же проблему с хоть каким-то решением. В сетке искал, нашел на delphikindom две темы, но там ничего особенного нету.
> clickmaker © (06.11.08 12:58) [8]
>
> а если искать тупо перебором с AnsiStartsText, например?
>
так в конце концов и сделал, но не уверен что это правильно.
← →
Johnmen © (2008-11-09 01:12) [10]Единственный достоверный, не зависящий не от чего или кого способ, это самоличный проход по НД с необходимой проверкой. Медленнее ли он Локейта? Возможно, да. Но не более, чем на процентов 20...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.12.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.156 c