Global 5.7

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

1. Изменение вида шкалы времени на диаграмме Гантта

Переработана отрисовка диаграммы ганта и добавлены новые возможности:

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

Более подробно фрейм диаграммы ганта.

Note

  • Документ поддержки №43119D
  • Задача №69786T

2. Добавить метод ShellExecEx2 с Callback-операцией

Существующий метод ShellExec можно использовать для открытия существующих файлов ассоциированным приложением в Windows.

Новый метод ShellExecEx2 расширяет возможности ShellExec, по аналогии с BlobOpenEx2: можно задать операцию обратного вызова, которая будет выполнена по окончании редактирования файла.

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

Note

  • Документ поддержки №69765D
  • Задача №70683T

3. Возможность создать запись в дереве уровнем ниже текущего уровня с добавлением в конец списка без полного рефреша дерева

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

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

Информация о новых методах добавлена в документацию: TbtkScriptSelectionObject.ClientAppend(), TbtkScriptSelectionObject.ChildNodesLoaded().

Note

  • Документ поддержки №66565D
  • Задача №67148T

4. Обеспечить сохранение масштаба при изменении ширины диаграммы ганта

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

Note

  • Документ поддержки №43119D
  • Задача №69993T

5. Изменить работу автофильтра

Доработаны клиентские фильтры по колонке для списочных представлений.

  • Добавлен пункт “Выбрать всё”
  • Ранее существовавший пункт “Все” переименован в “Сбросить фильтр”
  • Ранее существовавший пункт “По выбору…” переименован в “Сложное условие…”

Note

  • Документ поддержки №45760D
  • Задача №69239T

6. Реализовать диалоги настройки шкалы времени диаграммы Гантта

В рамках задачи реализовано:

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

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

Note

  • Документ поддержки №43119D
  • Задача №69999T

7. При печати графика проекта (с диаграммой Ганта) происходит разрыв колонок между разными листами

Добавлена возможность при печати диаграммы ганта в отчете переносить колонки и строки на новую страницу, если не влезают на предыдущую. См. свойство CuttingMode у компонента TbtkFrxPictureView.

Кроме этого исправлены следующие ошибки:

  1. Исправлена работа свойства TbtkFrxPictureView.Stretched. Раньше его значение ошибочно игнорировалось.

  2. Исправлен выводы диаграммы гантта, когда размеры области вывода превосходили размеры диаграммы во фрейме. В этом случае диаграмма обрезалась по размерам фрейма.

  3. Исправлен вывод вертикальных линий. Раньше их позиция в отчете зависела от текущей видимой области диаграммы во фрейме.

  4. Исправлен шрифт при печати дерева. Раньше шрифт зависел от шрифта сфокусированной ячейки на момент печати.

  5. Исправлена разлиновка диаграммы и дерева в отчете. Раньше первая строка на странице была всегда белой, и не соответствовала четности записи.

  6. Исправлена синхронизация разлиновки диаграммы гантта и дерева в отчете.

    1. Не совпадало понятие четных и не четных записей в некоторых ситуациях
    2. Начала записей синхронизированы по высоте. В предыдущей версии после доработки таймлайна ганта увеличилась высота шкалы времени, что не учитывалось в отчетах.

Note

  • Документ поддержки №70395D
  • Задача №71054T

8. Желательно при обновлении закладок не уничтожать закладки, если после они всё равно останутся

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

Note

  • Документ поддержки №69862D
  • Задача №70453T

9. Добавить расчет масштаба по активной шкале Ганта

В гант добавлен подбор масштаба (начальной и конечной даты видимой области) по активной шкале. Для этого реализован скриптовый метод TbtkGantt.CalcDateIntervalByActiveScale(). Метод автоматически вызывается в следующих случаях:

  • Перекрыта активная шкала до вызова операции OnShow через параметр выборки (параметр Timeline.Scale или соответствующее скриптовое свойство)
  • При выборе новой активной шкалы через диалог.

Подробнее о Фрейме диаграммы ганта.

Note

  • Документ поддержки 43119D
  • Задача №69787T

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

1. На таймлайне не отображаются метки находящиеся близко к границе

Теперь метки отображаются как положено.

Note

  • Документ поддержки №70031D
  • Задача №70032T

2. Исправить горизонтальную прокрутку диаграммы Ганта при наличие сколлапсированных интервалов

Раньше когда при прокрутке сколлапсированный интервал пересекал границу видимой области могла происходить смена масштаба диаграммы Ганта и скачко-образное изменение границ. Исправлено.

Note

  • Документ поддержки №43119D
  • Задача №70301T

3. В режиме совместимости с global3 (/i=fm /e=fs) в модальном окне не доступны данные gtt добавленные в открывшей выборке

Проблема была вызвана неверным определением сессии в режиме совместимости с Global 3. Исправлено.

Note

  • Документ поддержки №67586D
  • Задача №68141T

4. В некоторых случаях в сообщении об ошибке отображается неактуальный текст

Проблема проявлялась для необработанных не oracle-исключений возбуждаемых в pascal-операциях, если перед ними в pascal-операции было задавлено(try/except) oracle-исключение. При этом в сообщении об ошибке отображался текст обработанного oracle-исключения вместо текста необработанного.

В процессе устранения ошибки были вскрыты критичные проблемы pascal-метода LastExceptionLine(), которые были напрямую связаны с проблемой подмены текста в сообщении об ошибке. Так как метод нигде не задействован, а его корректная реализация весьма трудоемка он был удален.

Note

  • Документ поддержки №70368D
  • Задача №70651T