Имя: Пароль:
 
1C
 
Как починить подсказки при добавлении элементов формы программно?
0 DTX 4th
 
26.03.20
18:36
Еще не пятница? Опять к вопросу Intellisense...

В общем модуле типовой добавляю элементы на форму:

Процедура ст_ПриСозданииНаСервере(Форма, ПараметрыРазмещения)
...
    НовыйЭлемент = Форма.Элементы.Вставить("Имяфоле", Тип("ПолеФормы"), Форма.Элементы.ГруппаОсновная, Форма.Элементы.Ответственный);

    НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
    НовыйЭлемент.ПутьКДанным = "Объект.Администратор";


Вот тут хочу контекстную подсказку, чтобы каждый раз в СП не лазить:
Форма.Элементы.Вставить(вот тут)

Можно написать что-нибудь типа

Если Ложь Тогда
    Форма = Новый ФормаКлиентскогоПриложения
КонецЕсли;

?
1 ДенисЧ
 
26.03.20
18:49
Можно
#Если НЕ Клиент И НЕ Сервер И НЕ ВнешнееСоединение Тогда
  Форма = Новый ФормаКлиентскогоПриложения
#КонецЕсли
2 DTX 4th
 
26.03.20
19:02
(1) Не работает.
И в сп у ФормаКлиентскогоПриложения нет ни одного конструктора.

Думаю, должно быть что-то из серии ЗначениеВДанныеФормы, если вообще это возможно
3 ДенисЧ
 
26.03.20
19:05
Попробуй ЭтотОбъект.ПолучитьФорму().
Да и вообще - я тебе показал, как экранировать вызов. А что ты там экранировать будешь...
4 Cyberhawk
 
26.03.20
21:17
Легко. В заголовок метода добавляешь
#Если Сервер И Не Сервер Тогда
    &НаСервере
#Иначе
    &НаКлиентеНаСервереБезКонтекста
#КонецЕсли
5 DTX 4th
 
26.03.20
21:23
(3) Так это общий модуль, там нет ЭтотОбъект
И не пойму, зачем мне что-то экранировать?

(4) Модуль сервер, там нет директив. Да и вообще у меня расширение)
&После("ПриСозданииНаСервере")
Процедура ст_ПриСозданииНаСервере(Форма, ПараметрыРазмещения)

Но что бы это дало?
6 Cyberhawk
 
26.03.20
21:30
(5) Это способ для безконтекстных методов модуля формы
7 DTX 4th
 
26.03.20
21:35
(6) Ну, логично
А для общих модулей есть че?)
8 Cyberhawk
 
26.03.20
22:17
(7) Через ПолучитьФорму() вроде только, но там все равно конкретные реквизиты и элементы не поимеешь
9 DTX 4th
 
27.03.20
10:13
(8) К сожалению, подсказки не цепляются к переменной полученной через ПолучитьФорму() :(
10 Cyberhawk
 
27.03.20
12:22
(9) Тогда через ОткрытьФорму. Но, повторюсь, там только системные свойства будут - без контекста конкретной формы (ее элементов и реквизитов)
11 DTX 4th
 
27.03.20
13:58
(10) О, работает, крутяк) Спасибо!
12 ДенисЧ
 
27.03.20
14:22
Прошло полсуток. И человек наконец решил попробовать мой совет. И у него, как ни странно, сработало.
А Муму почему-то Тургенев написал...
13 DTX 4th
 
27.03.20
14:26
(12) Недостаточно просто подумать о чем-то. Ни в (1) ни в (4) нет упоминания ОткрытьФорму
14 ДенисЧ
 
27.03.20
14:32
(13) А в (3) что? Эта самая конская?
15 Cyberhawk
 
27.03.20
14:34
(14) ПолучитьФорму не работает
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс