Global 5.6

Изменения

1. Заменить MDI-интерфейс более производительным аналогом

Использовавшийся ранее многодокументный интерфейс (MDI) был заменён нашим более производительным и более удобным аналогом.

Преимущества нового интерфейса

Производительность

  • Новый интерфейс избегает ненужных накладных расходов, имеющихся в MDI, и, как следствие, работает быстрее.

Организация рабочего пространства

  • Новый интерфейс позволяет разделить рабочее пространство для размещения немодальных окон на несколько областей (от 1 до 4). Переключение между окнами внутри области осуществляется с помощью вкладок (на каждую область свой набор вкладок). В MDI отсутствовала возможность предопределять расположение окон до их создания, что создавало трудности в работе с несколькими окнами, отображаемыми рядом друг с другом.
  • Новый интерфейс автоматически масштабирует пространство, в котором отображаются немодальные окна при изменении размеров главного окна приложения. В MDI размер немодальных окон подгонялся под размер главного окна только в максимизированном режиме, в котором может отображаться только одно окно. А при совместном отображении нескольких окон, после изменений размеров главного окна, приходилось изменять размер каждого MDI-окна вручную.
  • Новый интерфейс полностью избавляет от необходимости вручную задавать размеры каждому окну при их совместном отображении. В MDI автоматическое распределение пространства подразумевало равномерное распределение окон по всей доступной области, что делало использование этого инструмента крайне неудобным при трех и более открытых окнах.

Сопутствующая документация

Реализованные заявки

1. Исправить проблемы печати диаграммы Гантта в отчет

Изменения отрисовки диаграммы Гантта при печати в отчет:

  • Диаграммы рисуются корректно на всех листах. Раньше везде рисовалась одна и та же область диаграммы.
  • Исправлена отрисовка связей между скрытыми элементами. Теперь связь не рисуется, если один из элементов находится в свернутом узле.
  • Вертикальная разлиновка диаграммы теперь рисуется на всех страницах, а не только на верхних.
  • Для свернутого узла отрисовывается соответствующий значок.
  • Фон заголовка дерева соответствует стилю клиента.
  • Иконки в ячейках выводятся в виде картинок, а не числовым идентификатором.
  • Горизонтальная разлиновка диаграммы рисуется одними цветами для дерева и для самой диаграммы. Порядок разлиновки для дерева и для диаграммы одинаков.
  • Диаграмма рисуется с верхнего элемента вне зависимости от скролла диаграммы на экране.
  • В заголовках столбцов текст рисуется с переносом по строкам.

2. Добавить методы клиентского шифрования/дешифрования для обменов больничными листами с ФСС

Дополнен скриптовый API по работе с криптографией:

  • добавлено понятие ключа шифрования - TbtkCryptorKey
  • методы шифрования/расшифрования сессионного ключа для XML (алгоритм transport-gost2001)
  • расширен API по работе с блобами:

3. Добавить возможность раскрытия узла дерева с подузлами

  1. Внесены изменения в методы TbtkScriptSelectionObject.OpenNode и TbtkScriptSelectionObject.OpenAllNodes.
  1. В выпадающее меню древовидного списка добавлен пункт меню “Раскрыть узел дерева с подузлами”, раскрывающий узел рекурсивно.

4. Доработка редактора “изображение” для вывода в списке/дереве нескольких изображений

Реализована возможность для редактора “изображение” (etIcon) задавать сразу несколько пиктограмм из ImageList-а, номера пиктограмм перечисляются через запятую в строке.

Отображение реализовано для списочных и древовидных представлений.

Если тип поля со значением для данного редактора строковый, то изображения выравниваются по левому краю (а не по центру, как для одиночного значения).

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

5. Ускорить открытие карточных фреймов

Открытие карточных фреймов было ускорено в среднем на 7%.

6. Не работают запросы в колонтитулах Excel отчетов

Реализована возможность использования запросов в колонтитулах Excel отчетов.

При использовании запросов в колонтитулах существуют ограничения, которые необходимо учитывать. Подробнее можно почитать в статье документации: Шаблоны Excel. Колонтитулы.

Исправленные ошибки

1. При открытии дерева проектов и работ, Гантт сжат

Исправлена ошибка, из-за которой диаграмма Гантта при открытии была сжата. Теперь диаграмма Гантта открывается с корректными размерами.

2. Selection.OpenAllNodes с параметром уровня раскрытия заваливает Гантта

Исправлена ошибка, из-за которой после применения метода Selection.OpenAllNodes диаграмма Гантта рисовалась пустой.

3. Ошибка в Гантте при закрытии закладок, если фокус стоит на выборке последней закладки

Исправлена ошибка “Cannot focus on disabled or invisible window” при закрытии панели вкладок.

4. Устранить добавление в заголовок фрейма названия настройки OLAP фрейма

Olap-фрейм больше не дописывает в заголовок название выбранной настройки.

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

5. При установке заголовка (setvar caption) панели - caption устанавливается не только самой панели, а панели + всей форме

Исправлено.

6. Сортировка бэндов в некоторых случаях работает неправильно

В алгоритме сортировки бэндов исправлена ошибка, теперь он работает верно.

Подробнее об алгоритме можно прочесть в документации.

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

Проблема исправлена, операция “элемент списка выбран” больше не вызывается при попытке добавить тег в редактор с мультивыбором, доступном только для чтения.

8. При установке стиля для контрола методом SetStyleControl стиль текста начинает применяться для других контролов в режиме редактирования

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

9. Не выводятся три точки для наименования банда и хинт при наведении мыши

Исправлено.

10. Добавить возможность расширения заголовка формы

Добавлена возможность расширить заголовок.

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

  • Основная часть заголовка управляется служебным параметром Caption (с помощью методов GetVar, SetVar и т.п.). Заголовок выборки и заголовок фрейма задают именно основную часть заголовка.
  • Расширение заголовка управляется служебным параметром CaptionExt.

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

11. Деревянный грид с частичной загрузкой данных очень долго отрисовывается

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

12. Тормоза при выполнении refreshitem на большом датасете

Выполнение RefreshItem приводило к перезагрузке данных визуального отображения списочного представления, что само по себе не является продолжительной операцией, но в случае большого объёма данных (сотни тысяч строк) - ощутимо.

Исправлено. Больше RefreshItem не приводит к перезагрузке данных визуального представления.

13. Кеш дефолтных значений зарегистрированных свойств не сбрасывается при смене авторизации в приложении

Реализована логика сброса кеша дефолтных значений зарегистрированных свойств при релогине приложения.

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

В списочном фрейме реализован сброс редактируемого значения поля Memo, в случае возникновения исключения в сеттере атрибута.

Поведение унифицировано с другими редакторами.

15. Сплиттеры учитывают не все ограничения размеров, установленные на фреймы, в результате чего разъезжаются layout-ы

Реализован механизм расчёта ограничения перемещения сплиттеров с учётом всех ограничений размеров, присутствующих в layout-е.

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

16. При сбросе крестом последнего элемента в редакторе с мультивыбором в редакторе остается текст с именем тега

Теперь текста не остается после сброса тега кликом мышки на крест на теге.

17. Возникновение ошибки “переполнение стека команд” при работе DynDet-фреймов в сочетании с фреймом TbtkGridPanelFrame

Ошибка возникала в случае использования не-lookup-ного фрейма в качестве детали DynDet-фрейма.

18. В редакторе даты не видно дату целиком

Проблема проявлялась не только с редактором даты, а вообще с любым однострочным текстовым редактором.

При первом открытии формы, если активный контрол — редактор текста с достаточно длинным текстом по умолчанию, то текст уезжал влево.

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