Pull to refresh

Comments 3

Не понял позыв статьи.
Вы работаете в контексте текущей формы, почему вам не должны быть доступны эти функции?
Вот если бы вы могли вызывать таким образом приватные функции из другой формы, тогда я еще бы понял, этого дико не хватает при написании механизмов добавления строк в типовые документы, так как там все функции перерасчета — приватные.

На проводки ничего не повлияет, так как проводки делаются непосредственно в самом модуле документа, а не его формы. Так что тут все чисто.

В модуле контекста ядра тестирования (Упр.форма) созданы 2 похожих метода ВыполнитьТестовыйМетодНаКлиенте (признак &НаКлиенте) и ВыполнитьТестовыйМетодНаСервере (признак &НаСервере).

Вот раньше, в 8.3.5 (вроде еще можно было), я мог создать две функции с одним именем, и в зависимости от контекста — я получал соответствующий вызов нужной функции, вот это было удобно, не надо было лепить кучу модулей Клиент, Сервер, КлиентСервер :) Но эту фичу починили :(
Нет, я работаю именно через контекст управляемой формы.
У меня как раз все было хуже, т.к. вызов идет из другой формы — из формы раннера тестов вызываются методы другой управляемой формы.

А здесь странность — почему приватные клиентские методы нельзя вызывать, а приватные серверные можно?
"УправляемаяФорма" не может быть получена не сервере ни каким образом.
Из справки: метод "ПолучитьФорму" может быть вызван только в контексте "Тонкий клиент, веб-клиент, толстый клиент".

"НаСервере" инициализировать управляемую форму просто так нет возможности.

В итоге: серверный метод управляемой формы в контексте сервера может быть вызван только из этой самой формы.
То есть вызов "ЭтаФорма.ПриватнаяНаСервере();" теряет смысл и равнозначен "ПриватнаяНаСервере();".
Sign up to leave a comment.

Articles