Имя: Пароль:
1C
1С v8
Поясните термин из справки
, ,
0 Rodinyr
 
07.12.11
09:08
Как понять вырожение "не следует выполнять программное открытие и закрытие одной и той же формы в одном вызове встроенного языка"? Заранее всем спасибо!
1 Maxus43
 
07.12.11
09:09
ПолучитьФорму(...).Открыть().Закрыть(); - так не слудет видимо
2 el-gamberro
 
07.12.11
09:11
ФормаСпр = ПолучитьФорму("Справочник.Номенклатура.ФормаСписка").Открыть().Закрыть();
3 Rodinyr
 
07.12.11
09:15
А если я получил форму открыл ее и в модуле Этой формы делаю Закрыть() тоже так не стоит делать?
4 Rie
 
07.12.11
09:16
(3) Суть в том, что если попытаться Закрыть не успевшую ещё толком открыться форму - может быть больно.
Подожди чуток - и тогда закрывай.
5 zelebobi4
 
07.12.11
09:20
(2) Так будет ошибка.
Форма = ПолучитьФорму().Открыть();
Форма.Закрыть();

Вот все будет нормально.
6 Defender aka LINN
 
07.12.11
09:22
(5) А в чем сакральный смысл данного действия будет?
7 Serg_1960
 
07.12.11
09:24
Не обращай внимание. Как програмируем - так и говорим. Одинаково криво :))
8 Rodinyr
 
07.12.11
09:25
Вопрос возник в том что у меня в управляемой форме один раз открылась форма полностью перерисовывалась в Веб-клиенте, а со второго раза уже открывается пустая пустая форма без элементов. поэтому я спрашиваю: я получаю форму и ее открываю вот так:
П=новый Структура;
   П.Вставить("СтатусДопДоговора","ОплатаТретьимЛицом");
   П.Вставить("Договор",Элементы.Таблица1.ТекущиеДанные.ссылка);
   П.Вставить("Пенни",Элементы.Таблица1.ТекущиеДанные.Пенни);
   П.Вставить("Проценты",Элементы.Таблица1.ТекущиеДанные.ПрЗаПр);
   П.Вставить("Дни",Элементы.Таблица1.ТекущиеДанные.ОДней);
   ф=ПолучитьФорму("ОбщаяФорма.ФормированиеДопДоговоров",п);
   ф.Открыть();

после неких действий на форме хоче ее закрыть!
9 Rodinyr
 
07.12.11
09:26
хочу*
10 Rodinyr
 
07.12.11
09:28
P.S. Когда форма закрывается программно, она закрывается в функции которая должна вызываться при нажатии кнопки на форме!
11 Serg_1960
 
07.12.11
09:31
Весь прикол не в этом. А в том, что ваш алгоритм и форма работают "сами по себе". Не синхронизировано :(
12 Rodinyr
 
07.12.11
09:35
Предлагаете Открывать модально?
13 zelebobi4
 
07.12.11
09:36
(6)
Смысл в том, что порядок действий именно такой. То что между открытием формы и её закрытием ничего не происходит, ну, так вопрос был именно про это.
14 zelebobi4
 
07.12.11
09:36
Про порядок.
15 Rodinyr
 
07.12.11
09:45
(11) Основной Алгоритм только открывает форму, а в форме выполняются действия определенного характера, после выполнения их происходит закрытие этой формы. Не понимаю, где может быть не так(Не синхронно)
16 hhhh
 
07.12.11
10:23
(15) ну Закрытие уже прошло по твоей команде, а в это время на форме у тебя начинаются действия определенного характера при открытии. Это называется несинхронность.
17 Serg_1960
 
07.12.11
10:25
(15) Что здесь "не так"? Имхо: да всё :(

"Форма.Открыть()" - далеко не факт, что форма будет открыта. "Форма.Открыта()" - не факт, что алгоритмы событий "ПередОткрытием" и "ПриОткрытии" уже отработали. А ведь эти алгоритмы могут содержать код, который закрывает форму; заполняет элементы формы, взаимодействует с пользователем...

Опять же - имхо: ну не "есть хорошо" :(, когда алгоритм, по сути своей, - "не интерактивный (т.е. выполняется "без участия" пользователя) - а использует форму - элемент интерактивного режима работы с пользователем...
18 Rodinyr
 
07.12.11
10:34
(16) Команда Закрыть выполняется после Выполнения действий!
19 Rodinyr
 
07.12.11
10:39
(17) Процедуры ПриОткрытии() я прописываю Ручками, там нет функций закрытия.
Алгоритм открытия формы выполняется не "не интерактивно",  а по нажатию кнопки на основной форме.
20 Hostess_
of_Love
 
07.12.11
10:40
(18)она выполняется сразу, независимо от действий на форме.
21 Hostess_
of_Love
 
07.12.11
10:41
если делать как в (5)
22 zelebobi4
 
07.12.11
10:43
Тогда
Фомра = ПолучитьФорму();
ФОрма.ОткрытьМодально();

Форма.Закрыть();
23 Rodinyr
 
07.12.11
10:47
(20)(21) Да я не так делаю! Делаю Открытие формы, а внутри этой форме( в ее модулях ) ее закрываю. вот про что речь!
24 Rodinyr
 
07.12.11
10:48
Модуль, в котором вызывается закрытие, Выполняется по нажатию кнопки на этой форме.
25 Hostess_
of_Love
 
07.12.11
10:51
(23)так в чем, собственно, проблема? тебе объяснили все в первых постах. если проблема в том, что при повторном открытии форма пустая, то ты просто не сохранил значения
26 Rodinyr
 
07.12.11
10:52
Ясно. буду дальше рыть сам.