Имя: Пароль:
1C
1С v8
Не закрывается окно документа, почему?
0 DES
 
30.05.17
13:44
Сделал
    
Для Каждого Докум Из Метаданные.Документы Цикл
Для Каждого ТекФорма Из Докум.Формы Цикл
  Форма = Документы[Докум.Имя].ПолучитьФорму(ТекФорма.Имя);
  Если Форма.Открыта() Тогда
   Сообщить("*************" + Докум.Имя + " " + ТекФорма.Имя);
   Форма.Закрыть("ОК");
  КонецЕсли;
КонецЦикла;
КонецЦикла;
    
Открываю список документов, из него открываю документ.
Запускаю Обработку
1. Список документов закрывается
2. Документ не закрывается.
Проверил в отладчике, форма документа Форма.Открыта()=Ложь.
Почему не она Истина ?
1 Ёпрст
 
гуру
30.05.17
13:50
(0) потому, что у каждой формы есть свой ключ  уникальности, ты проверяешь другую форму.
2 Irbis
 
30.05.17
13:51
А получить форму тождественно открыть форму?
3 dezss
 
30.05.17
13:51
в отладчике смотрел?
ты ж не по документам самим идешь, а по методанным...у тебя тут нет документссылка, чтобы реально проверять на открытость форм.
4 DES
 
30.05.17
14:01
ну твк форма списка закрывается этих документов, а сам документ - нет
5 DES
 
30.05.17
14:02
как найти формы открытых документов ?
6 Гипервизор
 
30.05.17
14:24
приложение обычное или необычное?
7 catena
 
30.05.17
14:54
А как этот код должен себя вести, если открыто несколько документов одного типа?
8 DES
 
30.05.17
15:17
Обычное приложение
9 DES
 
30.05.17
15:20
(7) В меню Окна эти окна имеют одинаковое наименование.
10 Ц_У
 
30.05.17
15:20
(8) Ключ уникальности в параметры открытия передай и (0) будет работать
11 1dvd
 
30.05.17
15:22
осмелюсь всё-таки задать этот каверзный вопрос. Нахрена?
12 Гипервизор
 
30.05.17
15:23
(11) может в разработке аналог "Окна-Закрыть все"?
13 Serg_1960
 
30.05.17
15:42
Нуу... тогда без нетленки H A D G E H O G s никак не выкрутиться.
14 catena
 
31.05.17
06:24
(9)Ты правда веришь, что Закрыть() должно работать для коллекции окон? Даже одинаково именованных?