01.03.2010, 10:00 | #1 |
Сам.AX
|
Ошибка при открытии диалога открытия файла (AX40sp2)
Добрый день.
Интересно получилось. Експортнул свой проект, потом импортнул в другую базу. Перестал работать диалог открытия файла. Контрол с открытием добавляется на форму динамически из кода. Однако при нажатии на кнопку для выбора файла выкидывет в отладчик со следующим сообщением: Цитата:
Ошибка времени выполнения: FormRun Объект не имеет метода "filenameLookupInitialPath".
Трассировка стека: (C)\Classes\FormRun\filenameLookupInitialPath (C)\Forms\SysOpenFileName\Methods\run - line 5 (C)\Classes\FormStringControl\performFormLookup (C)\Classes\FormStringControl\PerformTypeLookup (C)\Classes\FormStringControl\Lookup Поделитесь соображениями. Спасибо.
__________________
Возьми свет! |
|
01.03.2010, 10:14 | #2 |
Боец
|
На форме, где вы открываете файл должен быть метод "filenameLookupInitialPath". См. дебаг
|
|
|
За это сообщение автора поблагодарили: Alexx7 (1). |
01.03.2010, 12:19 | #3 |
Участник
|
Для открытия файлов с использованием SysOpenFileName реализации одного метода filenameLookupInitialPath() недостаточно. Вообще, перечень и примеры реализации нужных методов можно посмотреть на форме Dialog.
PS. каким боком к этой теме относится тег "законченный пример"? PPS. непонятно, почему в стандарте не обернули нужные методы в интерфейс. Пусть реализация интерфейсов на форме не контролируется компилятором, в отличие от их реализации в классах, но все же, было бы куда проще разбираться, какие методы нужно реализовать. Последний раз редактировалось gl00mie; 01.03.2010 в 12:22. |
|
01.03.2010, 12:38 | #4 |
Сам.AX
|
Для того, чтобы всё зароботало на форму добавил ряд методов.
X++: public str filenameLookupFileName() { return ''; } X++: public str filenameLookupTitle() { return '@MET31'; } X++: public FilenameFilter filenameLookupFilter() { return ['xls']; } X++: public str filenameLookupInitialPath() { return ''; } P.S. Вопрос был о причине возникновения ошибки. Причина раскрыта. Пример закончен.
__________________
Возьми свет! Последний раз редактировалось Alexx7; 01.03.2010 в 12:40. |
|