31.07.2018

Версия 1.9 (31.07.2018)

При создании версии 1.9 мы много времени уделили оптимизации производительности. Также мы устранили ряд недостатков, затруднявших стандартные сценарии работы, например, анализ свойств объектов, находящихся на поддержке. Кроме этого мы реализовали несколько новых механизмов и исправили ошибки. Все изменения версии 1.9 сгруппированы в несколько разделов:

Оптимизация

Хранение проектов

Уменьшен объем дисковой памяти, используемой для хранения проектов. На примере конфигурации 1С:ERP Управление предприятием 2 объём используемой памяти сокращён почти в два раза.

Сравнение и объединение конфигураций

Уменьшено потребление оперативной памяти при модификации конфигурации и при сравнении и объединении конфигураций.

Объединение конфигураций

Ускорено объединение конфигураций за счёт снижения количества блокировок данных и за счёт многопоточного сохранения измененных файлов на диск.

Сравнение HTML-документов

Ускорено сравнение HTML-документов в процессе сравнения конфигураций. Наибольшее ускорение, на 20-30%, достигается при трехстороннем сравнении.

Поиск подсистем

Ускорен поиск подсистем в диалоге фильтрации дерева конфигурации по подсистемам.

Состав общего реквизита

Ускорено открытие состава общего реквизита в его редакторе (закладка Состав).

Реквизиты формы

Уменьшено потребление памяти при отображении реквизитов формы в её редакторе (закладка Реквизиты).

Формы списка

Ускорено открытие форм списка в редакторе за счёт оптимизации ряда внутренних операций.

Редактор схемы компоновки данных

Ускорено открытие редактора схемы компоновки данных и некоторых диалогов, вызываемых из этого редактора: диалог выбора типа, диалог редактирования выражения для вычисляемых полей, редактор вложенной схемы компоновки данных. Также ускорен переход между полями в диалоге Выражение упорядочивания и некоторые другие действия.

Табличный документ

Оптимизировано открытие, редактирование и закрытие табличного документа. Достигнуто ускорение в 1,5 - 3 раза.

Темная тема (новое)

Темная тема

Мы адаптировали темную тему Eclipse для работы в составе EDT. Теперь все элементы, используемые EDT, отображаются в темной палитре.

005.png 006.png

007.png

008.png

009.png

Исключение составляют те интерфейсные объекты, которые вы должны видеть ровно так, как их увидит пользователь: табличный документ, графическая схема, форма в окне предварительного просмотра редактора формы, макет оформления системы компоновки данных.

Чтобы изменить тему, нажмите Окно > Параметры > Общие > Внешний вид > Тема: Dark. После этого мы рекомендуем перезапустить EDT (Файл > Перезапустить), чтобы избежать появления нежелательных артефактов.

Для возврата к стандартной теме, нажмите Окно > Параметры > Общие > Внешний вид > Восстановить значения по умолчанию, и перезапустите EDT.

Редактор встроенного языка

Комментарии сворачиваются

Комментарии к процедурам и функциям теперь сворачиваются, также как и другие структурные элементы кода: процедуры, функции, циклы, условия и т.д.

025.png

Автоматическое сворачивание комментариев вы можете настроить в параметрах EDT (ОкноПараметры...V8Встроенный языкСворачивание/Отображение участка кодаКомментарий процедур и функций).

026.png

Добавление строки внутрь многострочного комментария

При вводе новой строки между двумя строками комментария, она добавляется теперь сразу с парой символов "//".

027.png

Чтобы добавить новую строку в конец многострочного комментария надо, как и раньше, нажать Shift+Ввод.

Стандартная секция Пример

При комментировании процедур и функций в контекстной подсказке теперь доступна стандартная секция комментариев Пример.

028.png

Добавление параметров

Если в определении процедуры или функции указаны параметры, то при генерировании комментариев к методу (ИсточникГенерировать комментарии к методу Ctrl+Alt+D), список параметров добавляется в комментарий.

029.png

Добавление типа возвращаемого значения

Тип значения, возвращаемого функцией, автоматически добавляется в генерируемый комментарий.

030.png

Подсказка для выбора типа в комментариях

При описании в комментариях типов параметров и возвращаемых значений контекстная подсказка предлагает выбрать типы из имеющихся.

031.png

Гиперссылки на модули, процедуры и параметры

Вы можете вставлять в комментарии гиперссылки на другие модули, процедуры (функции) и их параметры. После стандартной конструкции "(См." контекстная подсказка предлагает список подходящих объектов.

032.png

После выбора конкретной процедуры контекстная подсказка предложит список её параметров.

033.png

Чтобы увидеть гиперссылку и перейти к упомянутому объекту, удерживайте Ctrl при наведении мыши.

034.png

Стандартный комментарий Устарела

К описанию процедур и функций контекстная подсказка позволяет добавлять стандартный комментарий Устарела.

035.png

При вызове процедуры или функции, описанной таким образом, система валидации будет формировать предупреждение о том, что используется устаревшая процедура (функция).

Описание свойств возвращаемого значения

При описании возвращаемого значения вы можете описывать в комментариях и его свойства. Механизм построения системы типов будет использовать это описание и подсказывать вам свойства, доступные через точку от возвращенного значения.

036.png

Возвращаемые коллекции значений

Если возвращаемое значение описано как коллекция значений, содержащая значения сложных типов, то механизм построения системы типов будет использовать это описание и предлагать вам свойства элементов, содержащихся в этой коллекции.

037.png

Уточнение типа возвращаемого значения

В системе типов встроенного языка некоторые универсальные типы имеют свойства с типом Произвольный. Это значит, что в этом свойстве может содержаться значение любого типа. Однако в конкретных прикладных алгоритмах часто бывает так, что в этом свойстве находится значение определенного типа, и другого быть не может, потому что так устроен ваш алгоритм. В такой ситуации, конечно, хочется, чтобы механизм построения системы типов мог сообщать что-то более конкретное, чем тип Произвольный.

Теперь такая возможность у вас есть. То описание типа, которое вы напишите в комментарии, будет добавлено к типу, который определяется по системе типов встроенного языка. Поэтому, если, например, ваша функция возвращает значение соответствия (которое во встроенном языке имеет тип Произвольный), а вы знаете, что там всегда число (таков ваш алгоритм), вы можете указать это в комментарии, и ваш тип будет добавлен к типу, который вычисляется по системе типов встроенного языка.

038.png

Копирование текущей строки

Теперь вы можете скопировать текущую строку, просто нажав Ctrl+C. Не нужно выделять её всю, как раньше.

Строковые литералы в функции ПолучитьФункциональнуюОпцию()

Мы реализовали автодополнение строкового литерала для функции ПолучитьФункциональнуюОпцию(). Теперь вы можете не вводить имя опции вручную, а выбрать одну из имеющихся в конфигурации опций.

010.png

Редактор "Все роли"

Не показывать права при открытии

Мы изменили логику работы редактора Все роли при открытии. Теперь он имеет два варианта работы: Не показывать права (стандартный) и Показывать все настроенные права.

При работе с большими конфигурациями основным сценарием является отбор объектов и ролей, права которых предполагается редактировать. Потому что анализ сразу всех имеющихся прав не имеет смысла из-за их большого количества. По этой причине в стандартном режиме теперь редактор открывается пустым, после чего вам необходимо выбрать объекты конфигурации и роли, чьи права вы хотите просматривать. Такой подход, в том числе, позволяет сократить время от открытия редактора до начала редактирования.

011.png

При желании вы можете вернуться к старому поведению редактора, установив в качестве стандартного вариант Показывать все настроенные права.

012.png

Фильтр по правам

Теперь вы можете отобразить в редакторе только те права, которые вас интересуют. Фильтр по правам имеет функцию поиска, таким образом вы можете быстро определить, например, какие роли обладают правом интерактивного удаления.

024.png

Экспорт и импорт конфигураций

Прозрачная блокировка критичных операций

Мы реализовали прозрачную (незаметную) блокировку действий пользователя в момент выполнения критичных операций, таких как импорт конфигурации, закрытие EDT, построение проекта и т. п. Если эти действия занимают длительное время или пользователь проявляет активность, тогда отображается диалог с индикатором выполнения операции, позволяющий оценить время, оставшееся до её завершения.

Импорт из общего списка мастеров

Теперь вы можете импортировать конфигурацию из информационной базы в проект, используя общий список мастеров импорта (Файл > Импортировать...).

013.png

Импорт "обычных приложений"

Импорт конфигурации с основным режимом запуска Обычное приложение теперь не приводит к ошибке.

Сравнение и объединение конфигураций

Сравнение однотипных веток

В панели Навигатор вы можете сравнить теперь (и при желании объединить) две однотипных ветки объектов, например, все справочники из двух разных конфигураций.

004.png

В этом случае в заголовке редактора сравнения и объединения отображаются имена проектов, которым принадлежат сравниваемые группы объектов.

014.png

Иконки удаления и добавления

В редактор сравнения / объединения и в диалог сравнения прав мы добавили иконки, обозначающие действие, которое будет выполнено при объединении: удаление свойства или его добавление.

002.png

Поиск по строке в сравнении прав

В диалоге сравнения прав вы можете теперь отбирать объекты главной конфигурации с помощью поиска по строке.

003.png

Удаление объектов

В настройках сравнения и объединения вы можете теперь разрешить или запретить удаление объектов главного источника. Этот флажок аналогичен параметру Разрешить удаление объектов основной конфигурации, который есть в конфигураторе.

015.png

Сообщение об отсутствии отличий

Теперь, если при сравнении конфигураций отсутствуют отличия, в редакторе сравнения / объединения показывается информационное сообщение.

016.png

Сравнение цветов

Теперь при сравнении цветов в редакторе отображается их реальное значение, установленное в конфигурации, а не цветовая модель RGB, как это было раньше.

001.png

Отличия в строковых переменных

В редакторе сравнения и объединения модулей, в строковых переменных, состоящих из нескольких слов, помечаются только измененные слова. Раньше вся строковая переменная помечалась измененной, что усложняло визуальный поиск отличий.

017.png

Неконфликтные изменения

Объединение неконфликтных изменений при трехстороннем сравнении выполняется теперь автоматически. В результат берутся изменения, выполненные слева и справа от родителя. Конфликтные изменения, как и раньше, объединяются в соответствии с выбранным правилом: Объединить с приоритетом главного источника или Объединить с приоритетом второго источника.

Объединение модулей

При объединении конфликтных изменений модулей больше не проставляются флаги MRG в теле модулей. Теперь EDT объединяет такие изменения автоматически, согласно правилу объединения и стороне приоритета.

Индикатор объединения

Индикатор процесса объединения конфигураций теперь более точно показывает динамику процесса. До 100% он доходит к тому моменту, когда все операции выполнены. Раньше при индикации 100% выполнялись завершающие операции, которые могли занимать длительное время, в результате чего создавался визуальный эффект "зависания" процесса объединения.

Сравнение в панелях Git

Если операция сравнения и объединения выполняется в панелях, входящих в перспективу Git (например, сравнение двух коммитов в панели История), теперь вызывается редактор сравнения и объединения, реализованный в EDT. Он позволяет выполнять сравнение в терминах объектов конфигурации. Раньше в этом случае вызывался стандартный редактор, сравнивающий текстовое содержимое xml-файлов.

Запуск и отладка

Стандартная аутентификация

Стандартно при создании конфигурации запуска или отладки теперь используются те параметры аутентификации (тип, имя пользователя, пароль), которые указаны для доступа к автоматически обновляемой информационной базе проекта. Таким образом, выбор пользователя и ввод пароля потребуются вам только в том случае, если вы хотите запустить конфигурацию от имени "особенного" пользователя, отличного от того, который осуществляет администрирование информационной базы.

Объекты на поддержке

Свойства объектов на поддержке

Мы внимательно проанализировали работу с объектами, которые находятся на поддержке, и исправили большую часть неудобств. Например, это некорректное отображение элементов управления, связанных с объектами, изменение которых запрещено, невозможность открыть некоторые связанные редакторы для просмотра свойств и состава таких объектов, и многие другие неудобства. Некоторые недочеты остались, мы планируем исправить их в ближайшей версии.

Внешние обработки и отчеты

Каталог сохранения обработок и отчетов

Для проекта внешних отчетов и обработок мы добавили возможность настроить каталог, в котором будут автоматически сохраняться файлы внешних отчетов (erf) и внешних обработок (epf). Раньше расположение этих файлов настроить было нельзя, они всегда сохранялись только в каталоге самого проекта. Таким образом, например, вы можете сохранять отчеты и обработки в сетевых каталогах, доступ к которым имеют другие компоненты 1С:Предприятия или другие разработчики.

Имя стандартной обработки / отчета

При создании нового проекта внешних отчетов и обработок вы можете теперь выбрать разные имена для самого проекта, и для обработки (отчета), который будет стандартно создан в нем. Раньше эти имена всегда совпадали, и, зачастую, вам приходилось переименовывать стандартно создаваемую обработку или отчет.

Панель Ошибки конфигурации

Ошибки конфигурации

Мы улучшили отображение списка ошибок конфигурации.

021.png

Теперь вы можете не только настраивать состав и положение колонок списка, но и группировать ошибки по отношению к проекту, к объекту конфигурации или по их серьезности (ошибка, предупреждение).

022.png

Кроме этого теперь вы можете фильтровать список ошибок. Например, вы можете отобразить только ошибки, относящиеся к текущему проекту, или к выбранной подсистеме. Или можете отобразить только предупреждения, которые относятся к интересующей вас подсистеме в разных проектах.

023.png

Выгрузка ошибок конфигурации

При выгрузке ошибок конфигурации в файл, теперь выгружаются только те ошибки, которые соответствуют фильтрам, установленным в панели Ошибки конфигурации.

Панель Поиск

Результаты поиска

Мы улучшили отображение результатов поиска. Теперь:

  • найденные фрагменты подсвечиваются,
  • вложенные ветки, содержащие единственный элемент раскрываются автоматически до конца, либо до ветки, содержащей несколько элементов,
  • есть кнопки перемещения вверх и вниз по списку результатов; при таком перемещении открываются соответствующие редакторы и показывают найденный фрагмент,
  • вы можете удалить один элемент, несколько элементов или все найденные элементы,
  • также вы можете выполнить текущий поиск повторно.

018.png

Кроме этого мы реализовали отображение результатов поиска в виде списка. Вы можете включить этот вариант с помощью дополнительного меню панели Поиск, выбрав Показать в виде списка.

019.png

Мониторинг производительности и сбор статистики (новое)

Анализ производительности

Мы реализовали в EDT механизм мониторинга производительности и сбора статистики. Этот механизм контролирует производительность EDT, автоматически собирает статистику возникающих ошибок и статистику использования той или иной функциональности EDT. Статистика автоматически объединяется и отправляется на сервис мониторинга для анализа. Сервис мониторинга расположен на инфраструктуре фирмы .

Сбор статистики помогает нам лучше анализировать работу EDT для того, чтобы принимать решения по приоритетам развития и оптимизации тех или иных механизмов, помогает оценивать изменение производительности разных операций в зависимости от версии приложения, характеристик компьютера, версии Java и других параметров.

Собираемая информация включает в себя:

  • время выполнения различных операций в EDT, которые представляют интерес для нас,
  • статистику использования функциональности EDT,
  • возникающие ошибки,
  • характеристики компьютера, операционной системы, версию Java.

Вся собираемая информация обезличена и не включает в себя личные данные пользователей и фрагменты конфигураций. Содержит статистические показатели, а так же информацию о произошедших ошибках. Подготовка и отправка отчетов не замедлит работу приложения.

Состав операций EDT, время выполнения которых анализируется, может меняться от версии к версии. На данный момент собирается информация всего о нескольких видах операций:

  • открытие всех редакторов,
  • формирование содержания страниц редакторов,
  • формирование содержания контекстной справки редактора встроенного языка.

При желании вы можете отключить сбор и отправку статистики в параметрах EDT (Окно > Параметры...).

Разное

Функциональные опции

Теперь при добавлении функциональной опции вы можете сразу указать объект, в котором будет храниться её значение. Это позволяет вам сразу после добавления заполнить состав функциональной опции.

020.png

Географическая схема

Теперь вы можете редактировать макеты, содержащие географические схемы.

039.png

Рефакторинг

Теперь перед выполнением рефакторинга EDT спрашивает, нужно ли сохранить изменения, выполненные в открытых редакторах. Раньше такое сохранение выполнялось автоматически без вопроса.

Публикации

Мы улучшили работу с публикациями:

  • в редактор публикации и в свойства публикации добавлен путь к модулям расширения веб-сервера,
  • в списке расширений Apache запись о расширении веб-сервера 1cws производится в алфавитном порядке,
  • после удаления последней публикации на Apache информация о расширении веб-сервера 1cws удаляется из конфигурационного файла Apache.