Получение значения DataSet.Field[].Value в Delphi-приложении
#1
Отправлено 03 февраля 2010 - 14:25
БД Oracle 9
TestComplete 7 (7.50.653.7) (DelphiScript)
Приложение откомпилировано как OpenApp.
В одной из форм типа Wizard тестируемого приложения необходимо установить значение DataSet.Fields[].Value, значения полей которого изменяются на каждом шаге визарда. DataSet является общим для всех визуальных компонентов формы. В Object Browser'е искомое свойство и подходящие методы объекта не обнаружены.
Есть ли возможные варианты решения?
P.S. для некоторых визуальных компонентов на форме есть возможность получить значение, но хотелось бы получить доступ к указанному DataSet.Field.Value (или что-то типа Fields[].Value)
Спасибо за ответы.
#2
Отправлено 04 февраля 2010 - 06:54
Попробуйте это:
DataSet.FieldByName('FieldName').Value := value;
Дмитрий
#3
Отправлено 04 февраля 2010 - 08:22
Здравствуйте.
Попробуйте это:DataSet.FieldByName('FieldName').Value := value;
Пробовал. Не получилось: оишбка "Unknown name: FieldByName".
Тоже самое получил при попытке повторить пример:
http://www.automated...ite=FieldByName.
Все plugin'ы, входящие в поставку TestComplete включены.
Может я что-то должен дополнительно подключить?
#4
Отправлено 10 февраля 2010 - 11:45
Скорее всего, объект DataSet с которым вы работаете, является внутренним объектов вашего приложения. Спросите у разработчиков приложения как работать именно с этим объектом и, вероятно, вы сможете использоватеь именно этот же код и в ваших тестах.
Дмитрий
#5
Отправлено 15 февраля 2010 - 07:33
Здравствуйте.
Скорее всего, объект DataSet с которым вы работаете, является внутренним объектов вашего приложения. Спросите у разработчиков приложения как работать именно с этим объектом и, вероятно, вы сможете использоватеь именно этот же код и в ваших тестах.
Спасибо за совет. Но я вхожу в команду разработчиков. Объект DataSet является наследником VCL-класса TDataSet.
Пробовал обращаться к методу DataSet.FieldByName => получил ошибку Unknown name: FieldByName.
В проекте используется Delphi версии 6 (Update pack 2) и Odac версии 3.5. Компонент TOraQuery является наследником TDataSet, что в свою очередь делает доступным такой метод как FieldByName. Для меня не понятно почему в окне Object Mapping не отображается этот метод.
Пробовал создать простое делфийское приложение с одним визуальным DbGrid и 2 невизуальными компонентами Table и DataSource. Использовал исключительно стандартные компоненты. Приложение сделал OpenApp. И все равное в Object Mapping не отображается метод FieldByName. :-(
#6
Отправлено 16 февраля 2010 - 07:56
У меня подозрение, что ваше приложение откомпилированно без отладочной информации. В этом случае TestComplete не может получить доступ ко всем свойствам и методам объектов приложение. Перекомпилируйте приложение согласно шагам в разделе справки Using Debug Info Agent With Delphi Applications.
Дмитрий
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных