|
заимствовать переменную в расширение? | ☑ | ||
---|---|---|---|---|
0
tired
25.06.20
✎
07:25
|
в начале модуля формы:
&НаКлиенте Перем ОткрытаФормаВыбораИсполнителя; // Признак того, что исполнитель выбирается из формы, а не быстрым вводом эта переменная используется в том числе в одной из процедур этого же модуля. пытаюсь изменить эту процедуру в расширении конфигурации, но вылазит ошибка: Переменная не определена (ОткрытаФормаВыбораИсполнителя) и как тут быть? |
|||
1
ASU_Diamond
25.06.20
✎
07:56
|
Добавь префикс к имени переменной для расширения
|
|||
2
Галахад
гуру
25.06.20
✎
08:11
|
Код, наверное стоит показать.
|
|||
3
Мимохожий Однако
25.06.20
✎
08:18
|
Переменную размести не в процедуре, а в модуле.
|
|||
4
Вафель
25.06.20
✎
08:19
|
а если на переменой нажать пкм и добавить в расширение
|
|||
5
Галахад
гуру
25.06.20
✎
08:28
|
(4) Гм. А чо так можно было?
|
|||
6
tired
25.06.20
✎
08:28
|
(1) Переменная не определена (Правка_ОткрытаФормаВыбораИсполнителя)
Или переменную тоже надо каким-то образом заимствовать? |
|||
7
tired
25.06.20
✎
08:31
|
(4) "Добавить в расширение" неактивно.
|
|||
8
tired
25.06.20
✎
08:35
|
(3) я переменную не размещаю. она - в основной конфигурации (только для чтения). я делаю изменения через расширение.
|
|||
9
PuhUfa
25.06.20
✎
08:39
|
(0) >>но вылазит ошибка: Переменная не определена (ОткрытаФормаВыбораИсполнителя)
Вылазит когда? |
|||
10
tired
25.06.20
✎
08:51
|
(9) при попытке сохранения изменений в расширение. если я её игнорирую, и изменения всё равно сохраняю и обновляю конфигурацию, то и в обычном режиме при открытии формы жалуется на то же и форма не появляется.
|
|||
11
PuhUfa
25.06.20
✎
09:04
|
(10) Сделал сейчас у себя на 8.3.15.1830. Даже синтаксис не выдал ошибок.
|
|||
12
tired
25.06.20
✎
09:47
|
(11) у нас 8.3.16.1148
|
|||
13
tired
25.06.20
✎
10:26
|
(2) &Вместо("ИсполнителиИсполнительПриИзменении")
Процедура Правка_ИсполнителиИсполнительПриИзменении(Элемент) Если ОткрытаФормаВыбораИсполнителя = Истина Тогда Возврат; КонецЕсли; СтрокаТЧ = Элементы.ИсполнителиПроведенияМО.ТекущиеДанные; ОсновнойОбъектАдресации = Неопределено; ДополнительныйОбъектАдресации = Неопределено; Если ТипЗнч(СтрокаТЧ.Исполнитель) = Тип("СправочникСсылка.РолиИсполнителей") И ЗначениеЗаполнено(СтрокаТЧ.Исполнитель) Тогда Если ИспользуетсяСОбъектамиАдресации(СтрокаТЧ.Исполнитель) Тогда КонтекстВыбора = "ИсполнительПриИзменении"; ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("РольИсполнителя", СтрокаТЧ.Исполнитель); ПараметрыФормы.Вставить("ОсновнойОбъектАдресации", ОсновнойОбъектАдресации); ПараметрыФормы.Вставить("ДополнительныйОбъектАдресации", ДополнительныйОбъектАдресации); ОткрытьФорму("ОбщаяФорма.ВыборРолиИсполнителя", ПараметрыФормы, ЭтотОбъект); Возврат; КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
14
tired
25.06.20
✎
10:28
|
почему-то первая строка исчезла:
&Вместо("ИсполнителиИсполнительПриИзменении") |
|||
15
tired
25.06.20
✎
11:39
|
кстати, ещё жалуется на это:
Процедура или функция с указанным именем не определена (ОткрытьФорму) |
|||
16
Галахад
гуру
25.06.20
✎
12:01
|
А если вставить:
#Если Сервер Тогда Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Тут что-то не так; Сообщение.Поле = Сообщить(); #КонецЕсли |
|||
17
tired
25.06.20
✎
12:27
|
(16) Обращение к процедуре как к функции (Сообщить)
|
|||
18
Галахад
гуру
25.06.20
✎
12:43
|
(16) Прогнал.
#Если Сервер Тогда Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Тут что-то не так; Сообщение.Сообщить(); #КонецЕсли |
|||
19
tired
25.06.20
✎
12:50
|
короче, я заимствовал обработчик как процедуру, а надо было на обработчике основной конфигурации из контекстного меню "добавить в расширение". проблема решена. всем - спасибо за участие!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |