Не работает переход к объявлению функции в скрипте унаследованного окна

Решил написать, поскольку часто сталикиваюсь с этой ситуацией.

Создал окно с гридом и использовал в качестве шаблона wnd_BaseGridArea.
окно-наследник

В скрипте шаблона окна видно ряд подключенных скриптов.
скрипт окна-шаблона

Создаю сервис скрипта для обработки событий грида, в скрипте в блоке "Использовать скрипты" нет записей, но известно, что я могу использовать функции из подключенных в шаблоне скриптов.
скрипт окна-наследника

Пытаюсь перейти к объявлению функции из скрипта созданного по шаблону грида - переход не происходит, хотя функцию эту я могу вызывать в текущем скрипте. Ожидается, что при попытке перейти в функцию, я смогу перейти в объявление этой функции, даже если сам скрипт подключен к родителю-шаблону.

Terrasoft XRM 3.4.0.143

Нравится

3 комментария

Добрый день, Андрей.
Это не ошибка, на самом деле. Это особенность работы конфигуратора.

Обратите, например, внимение на сервис Common\Dictionaries\Communication Type\wnd_CommunicationTypeEditScript. В function wnd_CommunicationTypeEditOnPrepare(Window) есть вызов из наследуемого сервиса: wnd_BaseDBEditOnPrepare(Window); Но, если удержать клавишу CTRL и кликнуть на wnd_CommunicationTypeEditOnPrepare мышкой - редактор не перейдет к обявлению wnd_CommunicationTypeEditOnPrepare. Подключение функций wnd_BaseDBEdit происходит в ядре, во время запуска приложения. К функциям, которые объявлены в явно подключенных сервисах - перейти таким же образам получится.

Здравствуйте, Андрей!

По данным отдела разработки, данная функциональность должна работать. Но поскольку она реализована, начиная с определённой версии, то может не работать для «старых» скриптов, которые были сохранены более ранними бинарниками. Поэтому алгоритм действий следующий:

1) Пересохранить скрипт и окно скрипта в TSAdmin.
2) Пересохранить окно шаблона и его скрипт.
3) Перезапустить TSAdmin.
4) Если не поможет – обновить бинарники до последних 3.4.0, т.к. 3.4.0.143 – довольно старые. После этого повторить действия 1) – 3).

Анна, спасибо :twisted:

Обновил бинарные файлы до версии 3.4.0.165, выполнил Ваши действия 1) - 3) и все заработало :smile:

Показать все комментарии