Доброе время суток,
В БД
firebird 3, есть 2 поля «
DSTU» - string и «
NUMERAL_DSTU» -
integer,
в них такие значения "
ДСТУ 3607-97" и во втором поле «
NUMERAL_DSTU» содержится только цифры с поля «
DSTU» - это «
360797».
Т.к. мне необходимо делать locate только по «
NUMERAL_DSTU» и по
части значения, я в
dataset делаю вычисляемое поле типа
string и присваиваю ему значение
ibdsDSTU.FieldByName('CALC_NUMBER_STRING').AsString := ibdsDSTU.FieldByName('NUMERAL_DSTU').AsString;
но
locate
DM.ibdsDSTU.Locate('CALC_NUMBER_STRING', '360', [loPartialKey]);
Всеравно не позицонируется. Все получается только при вводе полного значения, т.е. «
360797»
У других пишут выходит.
и в поле «
DSTU» например
locate = "
ДСТУ 360" также работает
Где ошибка?
Заранее спасибо за ответ
P.S.
вообще пишут, что должно работать, напимер в
https://delphi.fandom.com/wiki/TLocateOptions_Type