Имя: Пароль:
1C
1C 7.7
v7: Вернуть данные в переменную модуля формы из обработки.
0 Starhan
 
29.07.16
14:29
ситуация:

В форме документа есть переменная (экспортная)

Открыл обработку передав туда контекст. Все данные в контексте заполняются.

но теперь нужно из обработки в переменную в модуле формы документа передать значение.

Как?
1 vicof
 
29.07.16
14:30
Закрыть(Значение)
2 vicof
 
29.07.16
14:30
Оповестить()
3 Starhan
 
29.07.16
14:31
это 7.7 забыл уточнить
4 Это_mike
 
29.07.16
14:33
ИсполняемыйМодуль.
Других вариантов вроде нет.
но возникает ТКВ...
5 vicof
 
29.07.16
14:33
(3) Некрофил)
6 Это_mike
 
29.07.16
14:33
Ну, можно еще с ложным закрытием попробовать поизвращаться...
7 Starhan
 
29.07.16
14:34
(6) меня устроит передача при закрытии, есть такая возможность?
8 Starhan
 
29.07.16
14:34
(6) или можно сделать на форме невидимый элемент и он будет доступен через контекст?
9 Это_mike
 
29.07.16
14:36
(8) можно и так.
(7) попробуй. мне лениво...
10 youalex
 
29.07.16
14:40
(0)  а если присвоить этой переменной, в которую контекст передали - нужное значение?
Только передавать нужно не напрямую контекст, а переменную с ним.
11 Это_mike
 
29.07.16
14:45
(10) чиво?
12 Ёпрст
 
гуру
29.07.16
14:59
(0) загрузить формекс и она будет доступна через контекст и так.
13 Это_mike
 
29.07.16
15:00
(12) Это как? Контекст.Переменная, чтоль?
14 youalex
 
29.07.16
15:02
(11) да, хрень написал))
но в общем как то так должно работать:
в вызывающей форме:
Конт = глВзятьКонтекст(Контекст); //функция гл. модуля
ОткрытьФорму("Отчет", Конт, ИмяФайла);

в принимающей форме, после выполнения обработки:
Форма.Параметр = ЧегоТоТам;

В вызывающей форме - будет доступно Конт.Форма.Параметр
15 Ёпрст
 
гуру
29.07.16
15:02
(13) ага
16 Ёпрст
 
гуру
29.07.16
15:03
можно и так писать Конт.Печать()
17 Это_mike
 
29.07.16
15:03
(14) ну так это и ежк понятно.
он хочет не возвращаясь.. ну или по крайней мере, как будто оставаясь
18 Ёпрст
 
гуру
29.07.16
15:03
будет
19 Это_mike
 
29.07.16
15:04
(15) заинтриговал...
20 youalex
 
29.07.16
15:05
(17) открыть исходную форму, а в той - ПриПовторномОткрытии() ?
21 MishaD
 
29.07.16
15:17
(15)а туда разве не 100 вернется после закрытия формы, или я что-то путаю
22 Starhan
 
29.07.16
15:18
(17) можно и возвращаясь. То есть после того как закрыл форму обработки.

(12)Формекс загружен. Переменная не доступна
23 Starhan
 
29.07.16
15:21
Что есть щас

Перем МояПерем Экспорт;


Процедура Открытьобработку()

открытьФормумодально("обработка.мояобработка",глполучитьконтекст(Контекст))

КонецПроцедуры


В самой обработке

Процедура ПриОткрытии

Конт = Форма.параметр;

Конт.МояПерем = 1 // Тут не рабоатет. Что делать?

КонецПроцедуры
24 Starhan
 
29.07.16
15:21
В общем то я уже сделал через элемент на форме не видимый так работает.

Но если есть решение лучше гото рассмотреть :)
25 Это_mike
 
29.07.16
15:27
(23) Ёп говорит, что достаточно загррузить формекс...
26 Ёпрст
 
гуру
29.07.16
15:33
(23) модальность то убери.
Если она так впёрлась, то посто возвращай в контекст нужное значение и после закрытия модальной формы лови.
27 Ёпрст
 
гуру
29.07.16
15:38
Ну и, все пременные модуля там доступны, если че.
28 youalex
 
30.07.16
06:23
(20)
upd. Проверил - вроде работает. ПриПовторномОткрытии() можно при желании юзать как аналог ОбработкаОповещения()
29 Chameleon1980
 
30.07.16
07:23
Как я понял, то через переданный жеж контекст и возвращать что нужно (обработку модально, как говорили выше, открывать)
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn