RDT1C/CommonForms/ирАдаптацияРасширения/Ext/Form/Module.bsl
Администратор 75e9bfedae +Добавлен инструмент "Управление профайлами 1С"
Подбор и обработка объектов
        + Реализована доступность для выбора полей количества движений по регистрам
        +Добавлена поддержка доп. реквизитов и сведений БСП 2+ в обработке "Изменить/Добавить строку"
    Грамматика языка запросов
        *Исправлена ошибка разбора текста с REF в качестве имени поля
    Общее
        +В общих настройках добавлен флажок "Проверять подписки конфигурации при открытии первой формы" для ускорения на больших конфигурациях
        +Добавлена поддержка английского варианта встроенного языка
        *Проверка совместимости конфигурации при открытии первой формы теперь выполняется отложено
    Управление COM классами 1С
        +Теперь при двойном клике на имени файла он открывается в проводнике
    Адаптация расширения
        *Исправлена ошибка выполнения адаптации при наличии в конфигурации ссылочных таблиц внешних источников данных
        +Добавлен флажок "Подключить отладку отчетов БСП"
    Динамический список
        +Реализовано автоматическое обновление после завершения всех изменений данных в инструментах
        *Исправлена ошибка в обычной форме при выборе таблицы перечисления
    Интерфейсная панель
        *Исправлена ошибка открытия общих форм в варианте Расширение
    Анализ журнала регистрации
        +Добавлена кнопки снятия всех пометок в отборе
    Редактор объекта БД
        *Исправлена ошибка команды "Выгрузить в XML"
    Консоль запросов
        *Исправлена работа переход к закладке по F2 в поле текста запроса
        *Ускорено первое в сеансе открытие формы на больших конфигурациях
2019-03-11 22:02:41 +03:00

130 lines
10 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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