&НаКлиенте
Функция ДокументЗаказНаОтгрузкуОткрыт()
Заказ = ПолучитьЗаказНаОтгрузку(); // Ссылка на заказ
Если Заказ.Пустая() Тогда
Возврат Ложь;
КонецЕсли;
Окна = ПолучитьОкна();
Для Каждого Окно Из Окна Цикл
Если Окно.Заголовок = Строка(Заказ) Тогда
Если Вопрос("Для правильной работы формы контроля, открытый подчиненный документ ""ЗаказНаОтгрузку"" должен быть закрыт. Закрыть документ?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда
Предупреждение("Команда не может быть выполнена, если есть открытый подчиненный документ ""ЗаказНаОтгрузку""");
Возврат Истина; //ошибка
Иначе
Если Окно.Содержимое.Количество() = 0 Тогда
Предупреждение("Ошибка при закрытии подчиненной формы ""ЗаказКлиента""");
Возврат Истина; //ошибка
КонецЕсли;
Форма = Окно.ПолучитьСодержимое();
Если Форма <> Неопределено И ТипЗнч(Форма) = Тип("УправляемаяФорма") Тогда
Форма.Закрыть();
КонецЕсли;
Возврат Ложь; //открытая форма закрыта
КонецЕсли;
КонецЕсли;
КонецЦикла;
Возврат Ложь; //открытая форма не найдена
КонецФункции
Подписаться на:
Сообщения (Atom)