//ирПортативный Перем ирПортативный Экспорт; //ирПортативный Перем ирОбщий Экспорт; //ирПортативный Перем ирСервер Экспорт; //ирПортативный Перем ирКэш Экспорт; //ирПортативный Перем ирПривилегированный Экспорт; #Если Клиент Тогда // <Описание процедуры> // // Параметры: // <Параметр1> – <Тип.Вид> – <описание параметра> // <продолжение описания параметра>; // <Параметр2> – <Тип.Вид> – <описание параметра> // <продолжение описания параметра>. // Процедура ВосстановитьСписокИнтерфейсов() Экспорт лСписокИнтерфейсов = ВосстановитьЗначение("СписокИнтерфейсов"); Если лСписокИнтерфейсов <> Неопределено Тогда СписокИнтерфейсов = лСписокИнтерфейсов; КонецЕсли; ОбновитьСписокИнтерфейсов(); КонецПроцедуры // ВосстановитьСписокИнтерфейсов() // <Описание процедуры> // // Параметры: // <Параметр1> – <Тип.Вид> – <описание параметра> // <продолжение описания параметра>; // <Параметр2> – <Тип.Вид> – <описание параметра> // <продолжение описания параметра>. // Процедура СохранитьСписокИнтерфейсов() Экспорт СохранитьЗначение("СписокИнтерфейсов", СписокИнтерфейсов); КонецПроцедуры // СохранитьСписокИнтерфейсов() Процедура ОбновитьСписокИнтерфейсов() Экспорт МассивСтарых = Новый Массив; Для Каждого ИнтерфейсСписка Из СписокИнтерфейсов Цикл Если Метаданные.Интерфейсы.Найти(ИнтерфейсСписка.Значение) = Неопределено Тогда МассивСтарых.Добавить(ИнтерфейсСписка); КонецЕсли; КонецЦикла; Для Каждого СтарыйИнтерфейс Из МассивСтарых Цикл СписокИнтерфейсов.Удалить(СтарыйИнтерфейс); КонецЦикла; Для каждого Интерфейс Из Метаданные.Интерфейсы Цикл ЭлементСписка = СписокИнтерфейсов.НайтиПоЗначению(Интерфейс.Имя); Если Не ПравоДоступа("Использование", Интерфейс) Тогда Продолжить; КонецЕсли; Если ЭлементСписка = Неопределено Тогда ЭлементСписка = СписокИнтерфейсов.Добавить(Интерфейс.Имя, Интерфейс.Синоним, ГлавныйИнтерфейс[Интерфейс.Имя].Видимость); КонецЕсли; Если ЭлементСписка <> Неопределено Тогда Если Интерфейс.Переключаемый Тогда ЭлементСписка.Представление = "Переключаемый - " + Интерфейс.Представление(); Иначе ЭлементСписка.Представление = "Общий - " + Интерфейс.Представление(); КонецЕсли; КонецЕсли; ЭлементИнтерфейса = ГлавныйИнтерфейс.Найти(Интерфейс.Имя); ЭлементСписка.Пометка = ЭлементИнтерфейса.Видимость; КонецЦикла; СписокИнтерфейсов.СортироватьПоПредставлению(); КонецПроцедуры // <Описание процедуры> // // Параметры: // <Параметр1> – <Тип.Вид> – <описание параметра> // <продолжение описания параметра>; // <Параметр2> – <Тип.Вид> – <описание параметра> // <продолжение описания параметра>. // Процедура ДобавитьИнтерфейс(ИмяИнтерфейса) Экспорт ЭлементИнтерфейса = СписокИнтерфейсов.НайтиПоЗначению(ИмяИнтерфейса); Если ЭлементИнтерфейса <> Неопределено Тогда ЭлементИнтерфейса.Пометка = Истина; КонецЕсли; КонецПроцедуры // ДобавитьИнтерфейс() Процедура ВыполнитьПереключениеИнтерфейсов() Экспорт СтрокаИменИнтерфейсов = ""; Для каждого СтрокаСписка Из СписокИнтерфейсов Цикл Если СтрокаСписка.Пометка Тогда; СтрокаИменИнтерфейсов = СтрокаИменИнтерфейсов + ?(СтрокаИменИнтерфейсов = "", "", ",") + СтрокаСписка.Значение; КонецЕсли; КонецЦикла; ГлавныйИнтерфейс.ПереключитьИнтерфейс(СтрокаИменИнтерфейсов); КонецПроцедуры //ирПортативный лФайл = Новый Файл(ИспользуемоеИмяФайла); //ирПортативный ПолноеИмяФайлаБазовогоМодуля = Лев(лФайл.Путь, СтрДлина(лФайл.Путь) - СтрДлина("Модули\")) + "ирПортативный.epf"; //ирПортативный #Если Клиент Тогда //ирПортативный Контейнер = Новый Структура(); //ирПортативный Оповестить("ирПолучитьБазовуюФорму", Контейнер); //ирПортативный Если Не Контейнер.Свойство("ирПортативный", ирПортативный) Тогда //ирПортативный ирПортативный = ВнешниеОбработки.ПолучитьФорму(ПолноеИмяФайлаБазовогоМодуля); //ирПортативный ирПортативный.Открыть(); //ирПортативный КонецЕсли; //ирПортативный #Иначе //ирПортативный ирПортативный = ВнешниеОбработки.Создать(ПолноеИмяФайлаБазовогоМодуля, Ложь); // Это будет второй экземпляр объекта //ирПортативный #КонецЕсли //ирПортативный ирОбщий = ирПортативный.ПолучитьОбщийМодульЛкс("ирОбщий"); //ирПортативный ирКэш = ирПортативный.ПолучитьОбщийМодульЛкс("ирКэш"); //ирПортативный ирСервер = ирПортативный.ПолучитьОбщийМодульЛкс("ирСервер"); //ирПортативный ирПривилегированный = ирПортативный.ПолучитьОбщийМодульЛкс("ирПривилегированный"); ВосстановитьСписокИнтерфейсов(); #КонецЕсли