forked from CITKParus/P8-Panels
БД: P8PGantt - поддержка заливки прогресса, P8PDataGrif - поддержка сложных заголовков с группами, группировка строк
This commit is contained in:
parent
93a73c85ae
commit
afb72e475b
@ -51,7 +51,10 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
BORDER boolean, -- Разрешить сортировку
|
BORDER boolean, -- Разрешить сортировку
|
||||||
BFILTER boolean, -- Разрешить отбор
|
BFILTER boolean, -- Разрешить отбор
|
||||||
RCOL_VALS TCOL_VALS, -- Предопределённые значения
|
RCOL_VALS TCOL_VALS, -- Предопределённые значения
|
||||||
SHINT PKG_STD.TSTRING -- Текст всплывающей подсказки
|
SHINT PKG_STD.TSTRING, -- Текст всплывающей подсказки
|
||||||
|
SPARENT PKG_STD.TSTRING, -- Наименование родительской колонки
|
||||||
|
BEXPANDABLE boolean, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
|
BEXPANDED boolean -- Отобразить/скрыть дочерние колонки
|
||||||
);
|
);
|
||||||
|
|
||||||
/* Типы данных - коллекция описателей колонок таблицы данных */
|
/* Типы данных - коллекция описателей колонок таблицы данных */
|
||||||
@ -70,16 +73,30 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
/* Типы данных - строка */
|
/* Типы данных - строка */
|
||||||
type TROW is record
|
type TROW is record
|
||||||
(
|
(
|
||||||
|
SGROUP PKG_STD.TSTRING, -- Наименование группы
|
||||||
RCOLS TCOLS -- Колонки
|
RCOLS TCOLS -- Колонки
|
||||||
);
|
);
|
||||||
|
|
||||||
/* Типы данных - коллекция строк */
|
/* Типы данных - коллекция строк */
|
||||||
type TROWS is table of TROW;
|
type TROWS is table of TROW;
|
||||||
|
|
||||||
|
/* Типы данных - группа */
|
||||||
|
type TGROUP is record
|
||||||
|
(
|
||||||
|
SNAME PKG_STD.TSTRING, -- Наименование
|
||||||
|
SCAPTION PKG_STD.TSTRING, -- Заголовок
|
||||||
|
BEXPANDABLE boolean, -- Разрешить сокрытие/отображение дочерних
|
||||||
|
BEXPANDED boolean -- Отобразить/скрыть дочерние
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Типы данных - коллекция групп */
|
||||||
|
type TGROUPS is table of TGROUP;
|
||||||
|
|
||||||
/* Типы данных - таблица данных */
|
/* Типы данных - таблица данных */
|
||||||
type TDATA_GRID is record
|
type TDATA_GRID is record
|
||||||
(
|
(
|
||||||
RCOL_DEFS TCOL_DEFS, -- Описание колонок
|
RCOL_DEFS TCOL_DEFS, -- Описание колонок
|
||||||
|
RGROUPS TGROUPS, -- Описание групп
|
||||||
RROWS TROWS -- Данные строк
|
RROWS TROWS -- Данные строк
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -139,6 +156,7 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
NPROGRESS PKG_STD.TNUMBER := null, -- Прогресс (% готовности) задачи (null - не определен)
|
NPROGRESS PKG_STD.TNUMBER := null, -- Прогресс (% готовности) задачи (null - не определен)
|
||||||
SBG_COLOR PKG_STD.TSTRING := null, -- Цвет заливки задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
SBG_COLOR PKG_STD.TSTRING := null, -- Цвет заливки задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
STEXT_COLOR PKG_STD.TSTRING := null, -- Цвет текста заголовка задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
STEXT_COLOR PKG_STD.TSTRING := null, -- Цвет текста заголовка задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
|
SBG_PROGRESS_COLOR PKG_STD.TSTRING := null, -- Цвет заливки прогресса (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
BREAD_ONLY boolean := null, -- Сроки и прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY boolean := null, -- Сроки и прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
BREAD_ONLY_DATES boolean := null, -- Сроки задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY_DATES boolean := null, -- Сроки задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
BREAD_ONLY_PROGRESS boolean := null, -- Прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY_PROGRESS boolean := null, -- Прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
@ -154,6 +172,7 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
(
|
(
|
||||||
SBG_COLOR PKG_STD.TSTRING := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
SBG_COLOR PKG_STD.TSTRING := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
STEXT_COLOR PKG_STD.TSTRING := null, -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
STEXT_COLOR PKG_STD.TSTRING := null, -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
|
SBG_PROGRESS_COLOR PKG_STD.TSTRING := null, -- Цвет заливки прогресса (формат - HTML-цвет, #RRGGBBAA)
|
||||||
SDESC PKG_STD.TSTRING -- Описание
|
SDESC PKG_STD.TSTRING -- Описание
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -252,7 +271,9 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
|
|
||||||
/* Формирование строки */
|
/* Формирование строки */
|
||||||
function TROW_MAKE
|
function TROW_MAKE
|
||||||
return TROW; -- Результат работы
|
(
|
||||||
|
SGROUP in varchar2 := null -- Наименование группы
|
||||||
|
) return TROW; -- Результат работы
|
||||||
|
|
||||||
/* Добавление колонки к строке */
|
/* Добавление колонки к строке */
|
||||||
procedure TROW_ADD_COL
|
procedure TROW_ADD_COL
|
||||||
@ -320,9 +341,23 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
BFILTER in boolean := false, -- Разрешить отбор по колонке
|
BFILTER in boolean := false, -- Разрешить отбор по колонке
|
||||||
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения колонки
|
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения колонки
|
||||||
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
||||||
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/* Добавление описания группы к таблице данных */
|
||||||
|
procedure TDATA_GRID_ADD_GROUP
|
||||||
|
(
|
||||||
|
RDATA_GRID in out nocopy TDATA_GRID, -- Описание таблицы данных
|
||||||
|
SNAME in varchar2, -- Наименование группы
|
||||||
|
SCAPTION in varchar2, -- Заголовок группы
|
||||||
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних
|
||||||
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние
|
||||||
|
BCLEAR in boolean := false -- Флаг очистки коллекции описаний групп таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
|
);
|
||||||
|
|
||||||
/* Добавление описания колонки к таблице данных */
|
/* Добавление описания колонки к таблице данных */
|
||||||
procedure TDATA_GRID_ADD_ROW
|
procedure TDATA_GRID_ADD_ROW
|
||||||
(
|
(
|
||||||
@ -407,6 +442,7 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
NPROGRESS in number := null, -- Прогресс (% готовности) задачи (null - не определен)
|
NPROGRESS in number := null, -- Прогресс (% готовности) задачи (null - не определен)
|
||||||
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
|
SBG_PROGRESS_COLOR in varchar2 := null, -- Цвет заливки прогресса (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
BREAD_ONLY in boolean := null, -- Сроки и прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY in boolean := null, -- Сроки и прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
BREAD_ONLY_DATES in boolean := null, -- Сроки задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY_DATES in boolean := null, -- Сроки задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
BREAD_ONLY_PROGRESS in boolean := null -- Прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY_PROGRESS in boolean := null -- Прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
@ -456,6 +492,7 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
RGANTT in out nocopy TGANTT, -- Описание диаграммы Ганта
|
RGANTT in out nocopy TGANTT, -- Описание диаграммы Ганта
|
||||||
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
|
SBG_PROGRESS_COLOR in varchar2 := null, -- Цвет заливки прогресса (формат - HTML-цвет, #RRGGBBAA)
|
||||||
SDESC in varchar2, -- Описание
|
SDESC in varchar2, -- Описание
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции цветов (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции цветов (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
);
|
);
|
||||||
@ -552,6 +589,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SRESP_TAG_XDATA constant PKG_STD.TSTRING := 'XDATA'; -- Тэг для корня описания данных
|
SRESP_TAG_XDATA constant PKG_STD.TSTRING := 'XDATA'; -- Тэг для корня описания данных
|
||||||
SRESP_TAG_XROWS constant PKG_STD.TSTRING := 'XROWS'; -- Тэг для строк данных
|
SRESP_TAG_XROWS constant PKG_STD.TSTRING := 'XROWS'; -- Тэг для строк данных
|
||||||
SRESP_TAG_XCOLUMNS_DEF constant PKG_STD.TSTRING := 'XCOLUMNS_DEF'; -- Тэг для описания колонок
|
SRESP_TAG_XCOLUMNS_DEF constant PKG_STD.TSTRING := 'XCOLUMNS_DEF'; -- Тэг для описания колонок
|
||||||
|
SRESP_TAG_XGROUPS constant PKG_STD.TSTRING := 'XGROUPS'; -- Тэг для описания групп
|
||||||
SRESP_TAG_XGANTT_DEF constant PKG_STD.TSTRING := 'XGANTT_DEF'; -- Тэг для описания заголовка диаграммы Ганта
|
SRESP_TAG_XGANTT_DEF constant PKG_STD.TSTRING := 'XGANTT_DEF'; -- Тэг для описания заголовка диаграммы Ганта
|
||||||
SRESP_TAG_XGANTT_TASKS constant PKG_STD.TSTRING := 'XGANTT_TASKS'; -- Тэг для описания коллекции задач диаграммы Ганта
|
SRESP_TAG_XGANTT_TASKS constant PKG_STD.TSTRING := 'XGANTT_TASKS'; -- Тэг для описания коллекции задач диаграммы Ганта
|
||||||
SRESP_TAG_XCHART constant PKG_STD.TSTRING := 'XCHART'; -- Тэг для описания графика
|
SRESP_TAG_XCHART constant PKG_STD.TSTRING := 'XCHART'; -- Тэг для описания графика
|
||||||
@ -572,6 +610,10 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SRESP_ATTR_DESC constant PKG_STD.TSTRING := 'desc'; -- Атрибут для описания
|
SRESP_ATTR_DESC constant PKG_STD.TSTRING := 'desc'; -- Атрибут для описания
|
||||||
SRESP_ATTR_TYPE constant PKG_STD.TSTRING := 'type'; -- Атрибут для типа
|
SRESP_ATTR_TYPE constant PKG_STD.TSTRING := 'type'; -- Атрибут для типа
|
||||||
SRESP_ATTR_HINT constant PKG_STD.TSTRING := 'hint'; -- Атрибут для подсказки
|
SRESP_ATTR_HINT constant PKG_STD.TSTRING := 'hint'; -- Атрибут для подсказки
|
||||||
|
SRESP_ATTR_GROUP_NAME constant PKG_STD.TSTRING := 'groupName'; -- Атрибут для наименования группы
|
||||||
|
SRESP_ATTR_PARENT constant PKG_STD.TSTRING := 'parent'; -- Атрибут для ссылки на родителя
|
||||||
|
SRESP_ATTR_EXPANDABLE constant PKG_STD.TSTRING := 'expandable'; -- Атрибут для доступности действия сокрытия/отображения
|
||||||
|
SRESP_ATTR_EXPANDED constant PKG_STD.TSTRING := 'expanded'; -- Атрибут для флага сокрытия/отображения
|
||||||
|
|
||||||
/* Константы - атрибуты ответов (таблица данных) */
|
/* Константы - атрибуты ответов (таблица данных) */
|
||||||
SRESP_ATTR_DT_ORDER constant PKG_STD.TSTRING := 'order'; -- Атрибут для флага сортировки
|
SRESP_ATTR_DT_ORDER constant PKG_STD.TSTRING := 'order'; -- Атрибут для флага сортировки
|
||||||
@ -587,6 +629,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SRESP_ATTR_TASK_RO_DATES constant PKG_STD.TSTRING := 'readOnlyDates'; -- Атрибут для флага задачи "даты только для чтения"
|
SRESP_ATTR_TASK_RO_DATES constant PKG_STD.TSTRING := 'readOnlyDates'; -- Атрибут для флага задачи "даты только для чтения"
|
||||||
SRESP_ATTR_TASK_BG_COLOR constant PKG_STD.TSTRING := 'bgColor'; -- Атрибут для цвета заголовка задачи
|
SRESP_ATTR_TASK_BG_COLOR constant PKG_STD.TSTRING := 'bgColor'; -- Атрибут для цвета заголовка задачи
|
||||||
SRESP_ATTR_TASK_TEXT_COLOR constant PKG_STD.TSTRING := 'textColor'; -- Атрибут для цвета текста задачи
|
SRESP_ATTR_TASK_TEXT_COLOR constant PKG_STD.TSTRING := 'textColor'; -- Атрибут для цвета текста задачи
|
||||||
|
SRESP_ATTR_TASK_BG_PRG_COLOR constant PKG_STD.TSTRING := 'bgProgressColor'; -- Атрибут для цвета прогресса задачи
|
||||||
SRESP_ATTR_TASK_ATTRIBUTES constant PKG_STD.TSTRING := 'taskAttributes'; -- Атрибут для коллекции атрибутов задачи
|
SRESP_ATTR_TASK_ATTRIBUTES constant PKG_STD.TSTRING := 'taskAttributes'; -- Атрибут для коллекции атрибутов задачи
|
||||||
SRESP_ATTR_TASK_COLORS constant PKG_STD.TSTRING := 'taskColors'; -- Атрибут для коллекции цветов задачи
|
SRESP_ATTR_TASK_COLORS constant PKG_STD.TSTRING := 'taskColors'; -- Атрибут для коллекции цветов задачи
|
||||||
|
|
||||||
@ -695,7 +738,10 @@ text="Формат data_grid и gant как в chart"
|
|||||||
BORDER in boolean := false, -- Разрешить сортировку
|
BORDER in boolean := false, -- Разрешить сортировку
|
||||||
BFILTER in boolean := false, -- Разрешить отбор
|
BFILTER in boolean := false, -- Разрешить отбор
|
||||||
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения
|
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения
|
||||||
SHINT in varchar2 := null -- Текст всплывающей подсказки
|
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
||||||
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
|
BEXPANDED in boolean := true -- Отобразить/скрыть дочерние колонки
|
||||||
) return TCOL_DEF -- Результат работы
|
) return TCOL_DEF -- Результат работы
|
||||||
is
|
is
|
||||||
RRES TCOL_DEF; -- Буфер для результата
|
RRES TCOL_DEF; -- Буфер для результата
|
||||||
@ -711,6 +757,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
RRES.BFILTER := COALESCE(BFILTER, false);
|
RRES.BFILTER := COALESCE(BFILTER, false);
|
||||||
RRES.RCOL_VALS := COALESCE(RCOL_VALS, TCOL_VALS());
|
RRES.RCOL_VALS := COALESCE(RCOL_VALS, TCOL_VALS());
|
||||||
RRES.SHINT := SHINT;
|
RRES.SHINT := SHINT;
|
||||||
|
RRES.SPARENT := SPARENT;
|
||||||
|
RRES.BEXPANDABLE := COALESCE(BEXPANDABLE, false);
|
||||||
|
RRES.BEXPANDED := COALESCE(BEXPANDED, true);
|
||||||
/* Возвращаем результат */
|
/* Возвращаем результат */
|
||||||
return RRES;
|
return RRES;
|
||||||
end TCOL_DEF_MAKE;
|
end TCOL_DEF_MAKE;
|
||||||
@ -729,6 +778,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
BFILTER in boolean := false, -- Разрешить отбор
|
BFILTER in boolean := false, -- Разрешить отбор
|
||||||
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения
|
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения
|
||||||
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
||||||
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
@ -747,8 +799,11 @@ text="Формат data_grid и gant как в chart"
|
|||||||
BVISIBLE => BVISIBLE,
|
BVISIBLE => BVISIBLE,
|
||||||
BORDER => BORDER,
|
BORDER => BORDER,
|
||||||
BFILTER => BFILTER,
|
BFILTER => BFILTER,
|
||||||
|
RCOL_VALS => RCOL_VALS,
|
||||||
SHINT => SHINT,
|
SHINT => SHINT,
|
||||||
RCOL_VALS => RCOL_VALS);
|
SPARENT => SPARENT,
|
||||||
|
BEXPANDABLE => BEXPANDABLE,
|
||||||
|
BEXPANDED => BEXPANDED);
|
||||||
end TCOL_DEFS_ADD;
|
end TCOL_DEFS_ADD;
|
||||||
|
|
||||||
/* Поиск описания колонки по наименованию */
|
/* Поиск описания колонки по наименованию */
|
||||||
@ -772,7 +827,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
return null;
|
return null;
|
||||||
end TCOL_DEFS_FIND;
|
end TCOL_DEFS_FIND;
|
||||||
|
|
||||||
/* Сериализация описания колонки таблицы данных */
|
/* Сериализация описания колонок таблицы данных */
|
||||||
procedure TCOL_DEFS_TO_XML
|
procedure TCOL_DEFS_TO_XML
|
||||||
(
|
(
|
||||||
RCOL_DEFS in TCOL_DEFS -- Описание колонок таблицы данных
|
RCOL_DEFS in TCOL_DEFS -- Описание колонок таблицы данных
|
||||||
@ -793,6 +848,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_DT_ORDER, BVALUE => RCOL_DEFS(I).BORDER);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_DT_ORDER, BVALUE => RCOL_DEFS(I).BORDER);
|
||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_DT_FILTER, BVALUE => RCOL_DEFS(I).BFILTER);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_DT_FILTER, BVALUE => RCOL_DEFS(I).BFILTER);
|
||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_HINT, SVALUE => RCOL_DEFS(I).SHINT);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_HINT, SVALUE => RCOL_DEFS(I).SHINT);
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_PARENT, SVALUE => RCOL_DEFS(I).SPARENT);
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDABLE, BVALUE => RCOL_DEFS(I).BEXPANDABLE);
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDED, BVALUE => RCOL_DEFS(I).BEXPANDED);
|
||||||
/* Предопределённые значения */
|
/* Предопределённые значения */
|
||||||
if (RCOL_DEFS(I).RCOL_VALS is not null) and (RCOL_DEFS(I).RCOL_VALS.COUNT > 0) then
|
if (RCOL_DEFS(I).RCOL_VALS is not null) and (RCOL_DEFS(I).RCOL_VALS.COUNT > 0) then
|
||||||
for V in RCOL_DEFS(I).RCOL_VALS.FIRST .. RCOL_DEFS(I).RCOL_VALS.LAST
|
for V in RCOL_DEFS(I).RCOL_VALS.FIRST .. RCOL_DEFS(I).RCOL_VALS.LAST
|
||||||
@ -862,13 +920,85 @@ text="Формат data_grid и gant как в chart"
|
|||||||
RCOLS(RCOLS.LAST) := TCOL_MAKE(SNAME => SNAME, SVALUE => SVALUE, NVALUE => NVALUE, DVALUE => DVALUE);
|
RCOLS(RCOLS.LAST) := TCOL_MAKE(SNAME => SNAME, SVALUE => SVALUE, NVALUE => NVALUE, DVALUE => DVALUE);
|
||||||
end TCOLS_ADD;
|
end TCOLS_ADD;
|
||||||
|
|
||||||
|
/* Формирование описания группы */
|
||||||
|
function TGROUP_MAKE
|
||||||
|
(
|
||||||
|
SNAME in varchar2, -- Наименование
|
||||||
|
SCAPTION in varchar2, -- Заголовок
|
||||||
|
BEXPANDABLE in boolean := true, -- Разрешить сокрытие/отображение дочерних
|
||||||
|
BEXPANDED in boolean := true -- Отобразить/скрыть дочерние
|
||||||
|
) return TGROUP -- Результат работы
|
||||||
|
is
|
||||||
|
RRES TGROUP; -- Буфер для результата
|
||||||
|
begin
|
||||||
|
/* Формируем объект */
|
||||||
|
RRES.SNAME := SNAME;
|
||||||
|
RRES.SCAPTION := SCAPTION;
|
||||||
|
RRES.BEXPANDABLE := COALESCE(BEXPANDABLE, true);
|
||||||
|
RRES.BEXPANDED := COALESCE(BEXPANDED, true);
|
||||||
|
/* Возвращаем результат */
|
||||||
|
return RRES;
|
||||||
|
end TGROUP_MAKE;
|
||||||
|
|
||||||
|
/* Добавление описания группы в коллекцию */
|
||||||
|
procedure TGROUPS_ADD
|
||||||
|
(
|
||||||
|
RGROUPS in out nocopy TGROUPS, -- Коллекция описаний колонок
|
||||||
|
SNAME in varchar2, -- Наименование
|
||||||
|
SCAPTION in varchar2, -- Заголовок
|
||||||
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних
|
||||||
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние
|
||||||
|
BCLEAR in boolean := false -- Флаг очистки коллекции (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
|
)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
/* Инициализируем коллекцию если необходимо */
|
||||||
|
if ((RGROUPS is null) or (BCLEAR)) then
|
||||||
|
RGROUPS := TGROUPS();
|
||||||
|
end if;
|
||||||
|
/* Добавляем элемент */
|
||||||
|
RGROUPS.EXTEND();
|
||||||
|
RGROUPS(RGROUPS.LAST) := TGROUP_MAKE(SNAME => SNAME,
|
||||||
|
SCAPTION => SCAPTION,
|
||||||
|
BEXPANDABLE => BEXPANDABLE,
|
||||||
|
BEXPANDED => BEXPANDED);
|
||||||
|
end TGROUPS_ADD;
|
||||||
|
|
||||||
|
/* Сериализация описания групп таблицы данных */
|
||||||
|
procedure TGROUPS_TO_XML
|
||||||
|
(
|
||||||
|
RGROUPS in TGROUPS -- Описание групп таблицы данных
|
||||||
|
)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
/* Обходим группы из коллекции */
|
||||||
|
if ((RGROUPS is not null) and (RGROUPS.COUNT > 0)) then
|
||||||
|
for I in RGROUPS.FIRST .. RGROUPS.LAST
|
||||||
|
loop
|
||||||
|
/* Открываем описание группы */
|
||||||
|
PKG_XFAST.DOWN_NODE(SNAME => SRESP_TAG_XGROUPS);
|
||||||
|
/* Атрибуты группы */
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_NAME, SVALUE => RGROUPS(I).SNAME);
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_CAPTION, SVALUE => RGROUPS(I).SCAPTION);
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDABLE, BVALUE => RGROUPS(I).BEXPANDABLE);
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDED, BVALUE => RGROUPS(I).BEXPANDED);
|
||||||
|
/* Закрываем описание группы */
|
||||||
|
PKG_XFAST.UP();
|
||||||
|
end loop;
|
||||||
|
end if;
|
||||||
|
end TGROUPS_TO_XML;
|
||||||
|
|
||||||
/* Формирование строки */
|
/* Формирование строки */
|
||||||
function TROW_MAKE
|
function TROW_MAKE
|
||||||
|
(
|
||||||
|
SGROUP in varchar2 := null -- Наименование группы
|
||||||
|
)
|
||||||
return TROW -- Результат работы
|
return TROW -- Результат работы
|
||||||
is
|
is
|
||||||
RRES TROW; -- Буфер для результата
|
RRES TROW; -- Буфер для результата
|
||||||
begin
|
begin
|
||||||
/* Формируем объект */
|
/* Формируем объект */
|
||||||
|
RRES.SGROUP := SGROUP;
|
||||||
RRES.RCOLS := TCOLS();
|
RRES.RCOLS := TCOLS();
|
||||||
/* Возвращаем результат */
|
/* Возвращаем результат */
|
||||||
return RRES;
|
return RRES;
|
||||||
@ -959,6 +1089,10 @@ text="Формат data_grid и gant как в chart"
|
|||||||
loop
|
loop
|
||||||
/* Открываем строку */
|
/* Открываем строку */
|
||||||
PKG_XFAST.DOWN_NODE(SNAME => SRESP_TAG_XROWS);
|
PKG_XFAST.DOWN_NODE(SNAME => SRESP_TAG_XROWS);
|
||||||
|
/* Если указана группа - добавим её */
|
||||||
|
if (RROWS(I).SGROUP is not null) then
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_GROUP_NAME, SVALUE => RROWS(I).SGROUP);
|
||||||
|
end if;
|
||||||
/* Обходим колонки строки */
|
/* Обходим колонки строки */
|
||||||
if ((RROWS(I).RCOLS is not null) and (RROWS(I).RCOLS.COUNT > 0)) then
|
if ((RROWS(I).RCOLS is not null) and (RROWS(I).RCOLS.COUNT > 0)) then
|
||||||
for J in RROWS(I).RCOLS.FIRST .. RROWS(I).RCOLS.LAST
|
for J in RROWS(I).RCOLS.FIRST .. RROWS(I).RCOLS.LAST
|
||||||
@ -1000,6 +1134,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
begin
|
begin
|
||||||
/* Формируем объект */
|
/* Формируем объект */
|
||||||
RRES.RCOL_DEFS := TCOL_DEFS();
|
RRES.RCOL_DEFS := TCOL_DEFS();
|
||||||
|
RRES.RGROUPS := TGROUPS();
|
||||||
RRES.RROWS := TROWS();
|
RRES.RROWS := TROWS();
|
||||||
/* Возвращаем результат */
|
/* Возвращаем результат */
|
||||||
return RRES;
|
return RRES;
|
||||||
@ -1030,6 +1165,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
BFILTER in boolean := false, -- Разрешить отбор по колонке
|
BFILTER in boolean := false, -- Разрешить отбор по колонке
|
||||||
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения колонки
|
RCOL_VALS in TCOL_VALS := null, -- Предопределённые значения колонки
|
||||||
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
||||||
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
@ -1046,9 +1184,33 @@ text="Формат data_grid и gant как в chart"
|
|||||||
BFILTER => BFILTER,
|
BFILTER => BFILTER,
|
||||||
RCOL_VALS => RCOL_VALS,
|
RCOL_VALS => RCOL_VALS,
|
||||||
SHINT => SHINT,
|
SHINT => SHINT,
|
||||||
|
SPARENT => SPARENT,
|
||||||
|
BEXPANDABLE => BEXPANDABLE,
|
||||||
|
BEXPANDED => BEXPANDED,
|
||||||
BCLEAR => BCLEAR);
|
BCLEAR => BCLEAR);
|
||||||
end TDATA_GRID_ADD_COL_DEF;
|
end TDATA_GRID_ADD_COL_DEF;
|
||||||
|
|
||||||
|
/* Добавление описания группы к таблице данных */
|
||||||
|
procedure TDATA_GRID_ADD_GROUP
|
||||||
|
(
|
||||||
|
RDATA_GRID in out nocopy TDATA_GRID, -- Описание таблицы данных
|
||||||
|
SNAME in varchar2, -- Наименование группы
|
||||||
|
SCAPTION in varchar2, -- Заголовок группы
|
||||||
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних
|
||||||
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние
|
||||||
|
BCLEAR in boolean := false -- Флаг очистки коллекции описаний групп таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
|
)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
/* Формируем описание и добавляем в коллекцию таблицы данных */
|
||||||
|
TGROUPS_ADD(RGROUPS => RDATA_GRID.RGROUPS,
|
||||||
|
SNAME => SNAME,
|
||||||
|
SCAPTION => SCAPTION,
|
||||||
|
BEXPANDABLE => BEXPANDABLE,
|
||||||
|
BEXPANDED => BEXPANDED,
|
||||||
|
BCLEAR => BCLEAR);
|
||||||
|
end TDATA_GRID_ADD_GROUP;
|
||||||
|
|
||||||
/* Добавление описания колонки к таблице данных */
|
/* Добавление описания колонки к таблице данных */
|
||||||
procedure TDATA_GRID_ADD_ROW
|
procedure TDATA_GRID_ADD_ROW
|
||||||
(
|
(
|
||||||
@ -1084,6 +1246,8 @@ text="Формат data_grid и gant как в chart"
|
|||||||
if (NINCLUDE_DEF = 1) then
|
if (NINCLUDE_DEF = 1) then
|
||||||
TCOL_DEFS_TO_XML(RCOL_DEFS => RDATA_GRID.RCOL_DEFS);
|
TCOL_DEFS_TO_XML(RCOL_DEFS => RDATA_GRID.RCOL_DEFS);
|
||||||
end if;
|
end if;
|
||||||
|
/* Формируем описание групп */
|
||||||
|
TGROUPS_TO_XML(RGROUPS => RDATA_GRID.RGROUPS);
|
||||||
/* Формируем описание строк */
|
/* Формируем описание строк */
|
||||||
TROWS_TO_XML(RCOL_DEFS => RDATA_GRID.RCOL_DEFS, RROWS => RDATA_GRID.RROWS);
|
TROWS_TO_XML(RCOL_DEFS => RDATA_GRID.RCOL_DEFS, RROWS => RDATA_GRID.RROWS);
|
||||||
/* Закрываем корень */
|
/* Закрываем корень */
|
||||||
@ -1502,7 +1666,8 @@ text="Формат data_grid и gant как в chart"
|
|||||||
(
|
(
|
||||||
RTASK_COLORS in TGANTT_TASK_COLORS, -- Описание цветов задачи диаграммы Ганта
|
RTASK_COLORS in TGANTT_TASK_COLORS, -- Описание цветов задачи диаграммы Ганта
|
||||||
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
STEXT_COLOR in varchar2 := null -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
|
SBG_PROGRESS_COLOR in varchar2 := null -- Цвет заливки прогресса (формат - HTML-цвет, #RRGGBBAA)
|
||||||
) return TGANTT_TASK_COLOR -- Найденное описание цвета (null - если не нашли)
|
) return TGANTT_TASK_COLOR -- Найденное описание цвета (null - если не нашли)
|
||||||
is
|
is
|
||||||
begin
|
begin
|
||||||
@ -1511,7 +1676,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
for I in RTASK_COLORS.FIRST .. RTASK_COLORS.LAST
|
for I in RTASK_COLORS.FIRST .. RTASK_COLORS.LAST
|
||||||
loop
|
loop
|
||||||
if ((CMP_VC2(V1 => RTASK_COLORS(I).SBG_COLOR, V2 => SBG_COLOR) = 1) and
|
if ((CMP_VC2(V1 => RTASK_COLORS(I).SBG_COLOR, V2 => SBG_COLOR) = 1) and
|
||||||
(CMP_VC2(V1 => RTASK_COLORS(I).STEXT_COLOR, V2 => STEXT_COLOR) = 1)) then
|
(CMP_VC2(V1 => RTASK_COLORS(I).STEXT_COLOR, V2 => STEXT_COLOR) = 1) and
|
||||||
|
(CMP_VC2(V1 => RTASK_COLORS(I).SBG_PROGRESS_COLOR, V2 => SBG_PROGRESS_COLOR) = 1))
|
||||||
|
then
|
||||||
return RTASK_COLORS(I);
|
return RTASK_COLORS(I);
|
||||||
end if;
|
end if;
|
||||||
end loop;
|
end loop;
|
||||||
@ -1532,6 +1699,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
NPROGRESS in number := null, -- Прогресс (% готовности) задачи (null - не определен)
|
NPROGRESS in number := null, -- Прогресс (% готовности) задачи (null - не определен)
|
||||||
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
|
SBG_PROGRESS_COLOR in varchar2 := null, -- Цвет заливки прогресса (null - использовать цвет по умолчанию из стилей, формат - HTML-цвет, #RRGGBBAA)
|
||||||
BREAD_ONLY in boolean := null, -- Сроки и прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY in boolean := null, -- Сроки и прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
BREAD_ONLY_DATES in boolean := null, -- Сроки задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY_DATES in boolean := null, -- Сроки задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
BREAD_ONLY_PROGRESS in boolean := null -- Прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
BREAD_ONLY_PROGRESS in boolean := null -- Прогресс задачи только для чтения (null - как указано в описании диаграммы)
|
||||||
@ -1557,6 +1725,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
RRES.NPROGRESS := NPROGRESS;
|
RRES.NPROGRESS := NPROGRESS;
|
||||||
RRES.SBG_COLOR := SBG_COLOR;
|
RRES.SBG_COLOR := SBG_COLOR;
|
||||||
RRES.STEXT_COLOR := STEXT_COLOR;
|
RRES.STEXT_COLOR := STEXT_COLOR;
|
||||||
|
RRES.SBG_PROGRESS_COLOR := SBG_PROGRESS_COLOR;
|
||||||
RRES.BREAD_ONLY := BREAD_ONLY;
|
RRES.BREAD_ONLY := BREAD_ONLY;
|
||||||
RRES.BREAD_ONLY_DATES := BREAD_ONLY_DATES;
|
RRES.BREAD_ONLY_DATES := BREAD_ONLY_DATES;
|
||||||
RRES.BREAD_ONLY_PROGRESS := BREAD_ONLY_PROGRESS;
|
RRES.BREAD_ONLY_PROGRESS := BREAD_ONLY_PROGRESS;
|
||||||
@ -1644,6 +1813,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
if (RTASKS(I).STEXT_COLOR is not null) then
|
if (RTASKS(I).STEXT_COLOR is not null) then
|
||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_TASK_TEXT_COLOR, SVALUE => RTASKS(I).STEXT_COLOR);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_TASK_TEXT_COLOR, SVALUE => RTASKS(I).STEXT_COLOR);
|
||||||
end if;
|
end if;
|
||||||
|
if (RTASKS(I).SBG_PROGRESS_COLOR is not null) then
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_TASK_BG_PRG_COLOR, SVALUE => RTASKS(I).SBG_PROGRESS_COLOR);
|
||||||
|
end if;
|
||||||
if (RTASKS(I).BREAD_ONLY is not null) then
|
if (RTASKS(I).BREAD_ONLY is not null) then
|
||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_TASK_RO, BVALUE => RTASKS(I).BREAD_ONLY);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_TASK_RO, BVALUE => RTASKS(I).BREAD_ONLY);
|
||||||
end if;
|
end if;
|
||||||
@ -1735,21 +1907,22 @@ text="Формат data_grid и gant как в chart"
|
|||||||
RGANTT in out nocopy TGANTT, -- Описание диаграммы Ганта
|
RGANTT in out nocopy TGANTT, -- Описание диаграммы Ганта
|
||||||
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
SBG_COLOR in varchar2 := null, -- Цвет заливки задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
STEXT_COLOR in varchar2 := null, -- Цвет текста заголовка задачи (формат - HTML-цвет, #RRGGBBAA)
|
||||||
|
SBG_PROGRESS_COLOR in varchar2 := null, -- Цвет заливки прогресса (формат - HTML-цвет, #RRGGBBAA)
|
||||||
SDESC in varchar2, -- Описание
|
SDESC in varchar2, -- Описание
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции цветов (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции цветов (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
begin
|
begin
|
||||||
/* Проверим параметры */
|
/* Проверим параметры */
|
||||||
if ((SBG_COLOR is null) and (STEXT_COLOR is null)) then
|
if ((SBG_COLOR is null) and (STEXT_COLOR is null) and (SBG_PROGRESS_COLOR is null)) then
|
||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Должен быть указан цвет заливки или цвет текста задачи.');
|
'Должен быть указан цвет заливки или цвет текста задачи, или цвет заливки прогресса.');
|
||||||
end if;
|
end if;
|
||||||
if (SDESC is null) then
|
if (SDESC is null) then
|
||||||
P_EXCEPTION(0, 'Описание цвета должно быть задано.');
|
P_EXCEPTION(0, 'Описание цвета должно быть задано.');
|
||||||
end if;
|
end if;
|
||||||
/* Проверим, что такого ещё нет */
|
/* Проверим, что такого ещё нет */
|
||||||
if (TGANTT_TASK_COLOR_FIND(RTASK_COLORS => RGANTT.RTASK_COLORS, SBG_COLOR => SBG_COLOR, STEXT_COLOR => STEXT_COLOR)
|
if (TGANTT_TASK_COLOR_FIND(RTASK_COLORS => RGANTT.RTASK_COLORS, SBG_COLOR => SBG_COLOR, STEXT_COLOR => STEXT_COLOR, SBG_PROGRESS_COLOR => SBG_PROGRESS_COLOR)
|
||||||
.SDESC is not null) then
|
.SDESC is not null) then
|
||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Такое описание цвета для задачи диаграммы Ганта уже зарегистрировано.');
|
'Такое описание цвета для задачи диаграммы Ганта уже зарегистрировано.');
|
||||||
@ -1762,6 +1935,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
RGANTT.RTASK_COLORS.EXTEND();
|
RGANTT.RTASK_COLORS.EXTEND();
|
||||||
RGANTT.RTASK_COLORS(RGANTT.RTASK_COLORS.LAST).SBG_COLOR := SBG_COLOR;
|
RGANTT.RTASK_COLORS(RGANTT.RTASK_COLORS.LAST).SBG_COLOR := SBG_COLOR;
|
||||||
RGANTT.RTASK_COLORS(RGANTT.RTASK_COLORS.LAST).STEXT_COLOR := STEXT_COLOR;
|
RGANTT.RTASK_COLORS(RGANTT.RTASK_COLORS.LAST).STEXT_COLOR := STEXT_COLOR;
|
||||||
|
RGANTT.RTASK_COLORS(RGANTT.RTASK_COLORS.LAST).SBG_PROGRESS_COLOR := SBG_PROGRESS_COLOR;
|
||||||
RGANTT.RTASK_COLORS(RGANTT.RTASK_COLORS.LAST).SDESC := SDESC;
|
RGANTT.RTASK_COLORS(RGANTT.RTASK_COLORS.LAST).SDESC := SDESC;
|
||||||
end TGANTT_ADD_TASK_COLOR;
|
end TGANTT_ADD_TASK_COLOR;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user