Используя функцию поиска на вычисляемом поле в Delphi
Как мы можем использовать функцию определения местоположения или ту же функцию операции, используя вычисляемое поле в delphi Tadotable? что-то вроде этого
SampleAdotable.locate('samplefield',text,[lopartialkey]);
где samplefield - вычисляемое поле в SampleAdotable. В обычном случае создается исключение с этим сообщением:
Item can not be found in the collection corresponding to the requested name or ordinal
благодарю вас
1 ответ
Если твой SampleField
имеет тип fkCalculated
Я не думаю, что вы можете использовать это поле как поле, значение которого вы пытаетесь найти в вызове Locate
,
Причина в том, что Locate
звонки TCustomADODataSet.LocateRecord
которая генерирует ошибку, которую вы цитируете, и причина в том, что SampleField
это не поле в ADO Recordset
лежащий в основе TCustomADODataSet
, Исключение происходит при вызове Cursor.MoveNext
,
Чтобы сделать то, что вы хотите, попробуйте создать вычисляемое поле в выражении SQL, используемом для получения данных строки из базы данных. В зависимости от сервера, который вы используете, вам может потребоваться использовать TAdoQuery вместо TAdoTable для получения строк.