helpf.pro
Регистрация
 0 
Распечатать

1С 8.x : Форма ~ Получение списка открытых окон и вывод свойств элементов

Код 1C v 8.х
  Функция ПолучитьСписокОткрытыхОкон() Экспорт

ВключатьФормыЭлементов = ЭтаФорма.ВладелецФормы.ЭлементыФормы.ВключатьФормыЭлементов.Значение;

// Определим перебором, сколько у нас объектов в системе
КолвоОбъектов = 0;
Для Каждого ТипОбъекта Из ВсеТипы Цикл
Если (ТипОбъекта.Ключ <> "Константы") и (ТипОбъекта.Ключ <> "ОбщиеФормы") Тогда
Для каждого Объект из Метаданные[ТипОбъекта.Ключ] Цикл
Для каждого Фрм из Объект.Формы Цикл
КолвоОбъектов = КолвоОбъектов + 1;
КонецЦикла;
КонецЦикла;
КонецЕсли;
КонецЦикла;

ЭлементыФормы.ХодВыполненияОперации.МинимальноеЗначение = 1;
ЭлементыФормы.ХодВыполненияОперации.МаксимальноеЗначение = КолвоОбъектов;
ЭлементыФормы.ХодВыполненияОперации.Шаг = 100 / КолвоОбъектов;

КолвоОбъектов = 0;
сзСписокОкон = Новый СписокЗначений;
// Перебор типов метаданных
Для Каждого ТипОбъекта Из ВсеТипы Цикл
Если (ТипОбъекта.Ключ <> "Константы") и (ТипОбъекта.Ключ <> "ОбщиеФормы") Тогда
Для каждого Объект из Метаданные[ТипОбъекта.Ключ] Цикл
Если ВключатьФормыЭлементов И(ТипОбъекта.Ключ = "Справочники" Или ТипОбъекта.Ключ = "Документы") Тогда
// для элементов справочников и документов
Менеджер = Вычислить((ТипОбъекта.Ключ + "[Объект.Имя]"));
Выборка = Менеджер.выбрать();
пока Выборка.Следующий() Цикл
ФормаЭлем = Выборка.Ссылка.ПолучитьФорму();
Если ФормаЭлем.Открыта() Тогда
сзСписокОкон.Добавить(ФормаЭлем, Строка(Выборка.Ссылка) + " (" + Объект.Имя + ", форма элемента)");
КонецЕсли;
КонецЦикла;
КонецЕсли;
Для каждого Фрм из Объект.Формы Цикл
Форма = Вычислить(ТипОбъекта.Ключ + "[Объект.Имя].ПолучитьФорму(Фрм)");
КолвоОбъектов = КолвоОбъектов + 1;
ЭлементыФормы.ХодВыполненияОперации.Значение = КолвоОбъектов;
Попытка
Если Форма.открыта() Тогда
сзСписокОкон.Добавить(Форма, Объект.Имя + " (" + Фрм + ")");
КонецЕсли;
Исключение
Сообщить("ошибка");
КонецПопытки;
КонецЦикла;
КонецЦикла;
КонецЕсли;
КонецЦикла;
Возврат сзСписокОкон;
КонецФункции
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 11333
 0 
Распечатать
Возможно, вас также заинтересует
1C и Google Maps 12
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во...
COM-соединение не обнаружило свободной лицензии / ключ защиты 0
Иногда при подключении к 1С возникает ошибка: COM-соединение не обнаружило свободной лицензии! COM-соединение не обнаружило ключ защиты программы! https://helpf.pro/uploads/img/_1-UsuyAg6E2P.jpg В таких случаях, иногда, может помочь...
Excel файл как Внешний источник данных 4
Подключимся и загрузим из файла Excel данные в таблицу значений 1С. Сделать теперь это очень просто. 1. В конфигурации добавляет новый объект метаданных типа " Внешние источники данных" и назовем его просто " Excel" . ...
Google maps : вывод точек на карту и режим панорамы 2
В отличие от яндекс карт в GMaps можно использовать панорамы - за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С...
Google maps, поиск оптимального маршрута 2
В данном посте хочу коснуться основных аспектов построения оптимального маршрута с использованием API Google maps. Исходные данные для построения маршрута: * Географические координаты объектов, которые хранятся в базе; *...
Посмотреть все результаты поиска похожих
Комментарии
Maximysis
11.11.2014 11:09Комментарий: 1
Maximysis

 Что есть "ВсеТипы" ???

Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.