RDT1C/DataProcessors/ирРедакторОбъектаБД/Ext/ObjectModule.bsl
Администратор 1d5e608a69 +Добавлен инструмент "Поиск данных"
Редактор объекта БД
        *При повторном открытии по ссылке объекта теперь всегда активизируется уже открытая форма редактора
    Структура хранения БД
        *Восстановлено добавление служебных таблиц БД при включении вычисления размеров без отбора
    Конструктор запроса
        Конструктор выражения запроса
            +При двойном клике по доступному полю оно теперь вставляется в текст, замещая текущее выделение, и становится выделением
            +При двойном клике по функции теперь она вставляет в текст, обрамляя текущее выделение, и становится выделением
            +При открытии имени поля оно теперь сразу выделяется в тексте и выполняется позиционирование на нем в списке доступных полей
            *Исправлены некорректные сообщения об ошибках для условия с агрегатными функциями
        +Реализовано восстановление текущих строк в списках доступных полей при их обновлении
        +Для доступных полей добавлена команда "Перейти" в контекстном меню
        +Добавлена команда "Найти в списке доступных полей" для выбранных полей, элементов отбора, группировок
        +При генерации текста пакетного запроса теперь в начало добавляется комментарий с рекомендацией использовать конструктор запроса ИР
        *Исправлена ошибка разбора текста запроса в некоторых случаях с секцией ВЫБРАТЬ построителя перед секцией ИЗ запроса
        *Теперь игнорируются строки комментариев запроса состоящие только из символа "/"
        *Исправлена ошибка при выборе поля в индекс создаваемой временной таблицы
    Управление службами серверов 1С
        *Исправлено некорректное считывание номера порта и пароля Http отладки
        *Исправлено некорректное преобразование номера порта Http отладки в строку при применении настроек
    Интерфейсная панель
        *Выбор и просмотр подсистем сделан немодальным
        +В контекстном меню объектов метаданных добавлена команда "Исследовать метаданные"
    Общее
        +Во многих инструментах добавлена команда "Открыть объект метаданных" с пиктограммой интерфейсной панели
        *Исправлена проблема с регистрацией 64-разрядной компоненты DynamicWrapperX
        +Обновлено внутреннее описание платформы от версии 8.3.10
        +При интерактивном выводе данных табличного поля в табличных документ, в т.ч. для сравнения, теперь задается вопрос "Быстрый вывод (без оформления)?"
        +В форме списка значений подключено расширенное представление значений в ячейках
        +В форме массива подключено расширенное представление значений в ячейках
        +Конвертор синтакс-помощника встроен в подсистему в виде общей формы "Обновление описания платформы" и теперь может автоматически обновлять таблицы описания платформы в текущей конфигурации
    Консоль запросов
        +Команда "Перейти к определению" дерева запроса для постоянных таблиц теперь выполняет переход к объекту метаданных
        +Реализован подбор типа периода при повторном открытии редактора периода
        +Переключателю панели результата назначено сочетание клавиш CTRL+D
        +При включении автосохранения в заголовке формы теперь отображается слово "Автосохранение"
        *Исправлена проблема отсутствия сигнализации пользователю недоступности файла при его сохранении
        +При активизации строки дерева запроса, если включен пакетный результат, то активизируется соответствующий элемент результата
        +Для текущего параметра добавлена команда "найти в тексте"
    Управление COM классами 1C
        +Для списка доступных версий платформы добавлена кнопка Обновить
    Подбор и обработка объектов
        +Реализовано отображение признака "Измерение" в доступных полях
    Консоль компоновки
        *Исправлена проблема отсутствия сигнализации пользователю недоступности файла при его сохранении
    Консоль кода
        *Исправлена проблема отсутствия сигнализации пользователю недоступности файла при его сохранении
    Редактор хранилищ настроек
        *В портативном варианте исправлена недоступность для изменения поля "Имя содержит"
    Исследователь объектов
        +При двойном щелчке по значению объекта метаданных выполняется переход к нему в интерфейсной панели
    Контекстная подсказка
        +Команда "Перейти к определению" (F12) на обращениях к метаданным и их производным типам и таблицам открывает интерфейсную панель и позиционируется на нужном объекте
    Редактор констант
        +Увеличена максимальная разрядность дробной части значений до 9 знаков
    Подбор и обработка объектов
        *Исправлена невидимость параметров-ссылок в портативном варианте при запуске алгоритма без проверки
2017-07-10 21:30:06 +03:00

82 lines
6.3 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.

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