ЦИТК-980, ЦИТК-1020 - Перевод обращения с констант на функции в БД, добавлена инициализация сортировки P8PDataGrid #45

Merged
Mim merged 1 commits from Dollerok/P8-Panels:main into main 2026-07-30 10:10:06 +03:00
10 changed files with 553 additions and 415 deletions
Showing only changes of commit 6196caf9b9 - Show all commits

View File

@ -14,6 +14,7 @@ import {
P8P_TABLE_SIZE,
P8P_TABLE_DATA_TYPE,
P8P_TABLE_FILTER_SHAPE,
P8P_TABLE_ORDER_SHAPE,
P8P_TABLE_MORE_HEIGHT,
P8P_TABLE_FILTERS_HEIGHT,
P8P_TABLE_PAGINATOR_ALIGN,
@ -34,6 +35,9 @@ const P8P_DATA_GRID_DATA_TYPE = P8P_TABLE_DATA_TYPE;
//Формат фильтра
const P8P_DATA_GRID_FILTER_SHAPE = P8P_TABLE_FILTER_SHAPE;
//Формат сортировки
const P8P_DATA_GRID_ORDER_SHAPE = P8P_TABLE_ORDER_SHAPE;
//Высота кнопки догрузки данных
const P8P_DATA_GRID_MORE_HEIGHT = P8P_TABLE_MORE_HEIGHT;
@ -56,6 +60,7 @@ const P8PDataGrid = ({
tableStyle = {},
columnsDef = [],
filtersInitial,
ordersInitial,
groups = [],
rows = [],
size,
@ -94,7 +99,7 @@ const P8PDataGrid = ({
objectsCopier
}) => {
//Собственное состояние - сортировки
const [orders, setOrders] = useState([]);
const [orders, setOrders] = useState(ordersInitial || []);
//Собственное состояние - фильтры
const [filters, setFilters] = useState(filtersInitial || []);
@ -137,6 +142,11 @@ const P8PDataGrid = ({
setFilters(filtersInitial || []);
}, [filtersInitial]);
//При изменении списка установленных извне сортировок
useEffect(() => {
setOrders(ordersInitial || []);
}, [ordersInitial]);
//Генерация содержимого
return (
<P8PTable
@ -191,6 +201,7 @@ P8PDataGrid.propTypes = {
tableStyle: PropTypes.object,
columnsDef: PropTypes.array,
filtersInitial: PropTypes.arrayOf(P8P_DATA_GRID_FILTER_SHAPE),
ordersInitial: PropTypes.arrayOf(P8P_DATA_GRID_ORDER_SHAPE),
groups: PropTypes.array,
rows: PropTypes.array,
size: PropTypes.string,
@ -237,6 +248,7 @@ export {
P8P_DATA_GRID_DATA_TYPE,
P8P_DATA_GRID_SIZE,
P8P_DATA_GRID_FILTER_SHAPE,
P8P_DATA_GRID_ORDER_SHAPE,
P8P_DATA_GRID_MORE_HEIGHT,
P8P_DATA_GRID_FILTERS_HEIGHT,
P8P_DATA_GRID_PAGINATOR_ALIGN,

View File

@ -83,6 +83,12 @@ const P8P_TABLE_FILTER_SHAPE = PropTypes.shape({
to: PropTypes.any
});
//Структура элемента описания сортировки
const P8P_TABLE_ORDER_SHAPE = PropTypes.shape({
direction: PropTypes.string.isRequired,
name: PropTypes.string.isRequired
});
//Размещение области страниц по вертикали
const P8P_TABLE_PAGINATOR_ALIGN = {
LEFT: "left",
@ -963,12 +969,7 @@ P8PTable.propTypes = {
})
),
rows: PropTypes.array.isRequired,
orders: PropTypes.arrayOf(
PropTypes.shape({
name: PropTypes.string.isRequired,
direction: PropTypes.string.isRequired
})
).isRequired,
orders: PropTypes.arrayOf(P8P_TABLE_ORDER_SHAPE).isRequired,
filters: PropTypes.arrayOf(P8P_TABLE_FILTER_SHAPE).isRequired,
size: PropTypes.string,
pageNumber: PropTypes.number,
@ -1014,6 +1015,7 @@ export {
P8P_TABLE_DATA_TYPE,
P8P_TABLE_SIZE,
P8P_TABLE_FILTER_SHAPE,
P8P_TABLE_ORDER_SHAPE,
P8P_TABLE_MORE_HEIGHT,
P8P_TABLE_FILTERS_HEIGHT,
P8P_TABLE_PAGINATOR_ALIGN,

View File

@ -695,7 +695,7 @@ create or replace package body PKG_P8PANELS_CLNTTSKBRD as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => SDP_PREF || SDP_CODE,
SCAPTION => SDP_NAME,
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
else
PKG_P8PANELS_VISUAL.TDG_ROW_ADD_CUR_COLS(RROW => RDG_ROW,
@ -727,135 +727,135 @@ create or replace package body PKG_P8PANELS_CLNTTSKBRD as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер записи',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NCRN',
SCAPTION => 'Каталог',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SCOND_FROM => 'BYEV_CRN',
BFILTER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SEVPREF',
SCAPTION => 'Префикс',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SEVNUMB',
SCAPTION => 'Номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SPREF_NUMB',
SCAPTION => 'Префикс и номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NEVTYPE',
SCAPTION => 'Тип события (Рег. номер)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SEVTYPE_CODE',
SCAPTION => 'Тип события',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SCOND_FROM => 'BYEV_TYPE',
BFILTER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DREG_DATE',
SCAPTION => 'Дата регистрации',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DCHANGE_DATE',
SCAPTION => 'Дата последнего изменения',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BORDER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DEXPIRE_DATE',
SCAPTION => 'Дата истечения времени нахождения в точке маршрута',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DPLAN_DATE',
SCAPTION => 'Дата начала работ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BORDER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NINIT_PERSON',
SCAPTION => 'Инициализатор (Рег. номер)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SINIT_PERSON',
SCAPTION => 'Инициализатор',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NEVSTAT',
SCAPTION => 'Статус (Рег. номер)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SEVSTAT_NAME',
SCAPTION => 'Статус',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSEND_PERSON',
SCAPTION => 'Получатель (Рег. номер)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSEND_PERSON',
SCAPTION => 'Получатель',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SCOND_FROM => 'BYEV_S_PERSON',
BFILTER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NAGNLIST_RN',
SCAPTION => 'Рег. номер контрагенты',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSEND_DIVISION',
SCAPTION => 'Подразделение (Рег. номер)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSEND_DIVISION',
SCAPTION => 'Подразделение',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SCOND_FROM => 'BYEV_S_DIVISION',
BFILTER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSEND_USRGRP',
SCAPTION => 'Группа пользователей (Рег. номер)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSEND_USRGRP',
SCAPTION => 'Группа пользователей',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SCOND_FROM => 'BYEV_S_USER_GROUP',
BFILTER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SEVDESCR',
SCAPTION => 'Описание',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NCLOSED',
SCAPTION => 'Аннулировано',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
SCOND_FROM => 'BYEV_CLOSED_From',
SCOND_TO => 'BYEV_CLOSED_To',
BFILTER => true,
@ -863,19 +863,19 @@ create or replace package body PKG_P8PANELS_CLNTTSKBRD as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SLINKED_UNIT',
SCAPTION => 'Учётный раздел',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NLINKED_RN',
SCAPTION => 'Учётный документ (Рег. номер)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
SCOND_FROM => 'BYEV_LINKED_RN',
BFILTER => true,
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSENDER',
SCAPTION => 'Наименование исполнителя',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
/* Формируем блок запроса свойств документа и коллекций наименований/типов */
UTL_CLNEVENTS_DP_QUERY_BLOCK(NCOMPANY => NCOMPANY,

View File

@ -404,93 +404,93 @@ create or replace package body PKG_P8PANELS_EQUIPSRV as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SOBJINFO',
SCAPTION => 'Информация по объекту ремонта',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SINFO',
SCAPTION => 'Объект ремонта',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SWRKTYPE',
SCAPTION => 'Тип работ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SPARENT => 'SINFO',
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SWORKNAME',
SCAPTION => 'Наименование работы',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'STECHOBJCODE',
SCAPTION => 'Код тех. объекта',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'STECHOBJNAME',
SCAPTION => 'Наименование тех. объекта',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SBELONG',
SCAPTION => 'Принадлежность',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SPRODOBJ',
SCAPTION => 'Производственный объект',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'STECHSERV',
SCAPTION => 'Тех. служба',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SRESPDEP',
SCAPTION => 'Отвественное подразделение',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'STECSERVCODE',
SCAPTION => 'Вид ремонта',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DDATEPLANBEG',
SCAPTION => 'Начало работы (план)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DDATEPLANEND',
SCAPTION => 'Окончание работы (план)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DDATEFACTBEG',
SCAPTION => 'Начало работы (факт)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DDATEFACTEND',
SCAPTION => 'Окончание работы (факт)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'STECSRVKINDCODE',
SCAPTION => 'Код типа работы',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'STECSRVKINDNAME',
SCAPTION => 'Наименование типа работы',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
/* Очистка коллекций */
PKG_CONTVALLOC1S.PURGE(RCONTAINER => YM);
@ -533,7 +533,7 @@ create or replace package body PKG_P8PANELS_EQUIPSRV as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => '_' || TO_CHAR(Y) || '_' || TO_CHAR(M),
SCAPTION => LPAD(TO_CHAR(M), 2, '0') || ' ' || TO_CHAR(Y),
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BEXPANDABLE => true,
BEXPANDED => BEXPANDED);
/* Подсчёт кол-ва дней в месяце */
@ -547,7 +547,7 @@ create or replace package body PKG_P8PANELS_EQUIPSRV as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => '_' || TO_CHAR(Y) || '_' || TO_CHAR(M) || '_' || TO_CHAR(D),
SCAPTION => TO_CHAR(D, '99'),
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SPARENT => '_' || TO_CHAR(Y) || '_' || TO_CHAR(M));
end loop;
end loop;

View File

@ -1008,48 +1008,48 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOC_INFO',
SCAPTION => 'Накладная',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
/* Если тип "Приход из подразделений и маршрутные листы", то необходимо включать состояние */
if (NTYPE = NTASK_TYPE_INC_DEPS_RL) then
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOC_STATE',
SCAPTION => 'Состояние',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
end if;
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DWORK_DATE',
SCAPTION => 'Дата сдачи',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOC_VALID_INFO',
SCAPTION => 'Маршрутный лист',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SOUT_DEPARTMENT',
SCAPTION => 'Сдающий цех',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSTORE',
SCAPTION => 'Склад цеха потребителя',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_FACT',
SCAPTION => 'Количество сдано',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
/* Инициализируем список маршрутных листов */
@ -1228,49 +1228,49 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRESPL_CODE',
SCAPTION => 'Обозначение',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRESPL_NAME',
SCAPTION => 'Наименование',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NPROD_QUANT',
SCAPTION => 'Применяемость',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_PLAN',
SCAPTION => 'Количество план',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NREST',
SCAPTION => 'Остаток',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_FACT',
SCAPTION => 'Скомплектовано',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DRES_DATE_TO',
SCAPTION => 'Зарезервировано',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRESPL_NOMEN',
SCAPTION => 'Номенклатура',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
/* Обходим данные */
begin
@ -1441,38 +1441,38 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SINDOC',
SCAPTION => 'Партия',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSTORE',
SCAPTION => 'Склад',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSALE',
SCAPTION => 'К продаже',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRESTFACT',
SCAPTION => 'Фактический остаток',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRESERV',
SCAPTION => 'Резерв',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true,
BFILTER => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SPRICEMEAS',
SCAPTION => 'Единица измерения',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
/* Если номенклатура или хранилища указаны */
@ -1634,48 +1634,48 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOCPREF',
SCAPTION => 'Префикс',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOCNUMB',
SCAPTION => 'Номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DEXEC_DATE',
SCAPTION => 'Дата запуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRES_PLAN_NOMEN',
SCAPTION => 'Номенклатура основного материала',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRES_PLAN_NAME',
SCAPTION => 'Наименование основного материала',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT',
SCAPTION => 'Количество запуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_PLAN',
SCAPTION => 'Выдать по норме',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
/* Обходим данные */
@ -1838,42 +1838,42 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOCPREF',
SCAPTION => 'Префикс',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOCNUMB',
SCAPTION => 'Номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DEXEC_DATE',
SCAPTION => 'Дата запуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT',
SCAPTION => 'Количество запуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DREL_DATE',
SCAPTION => 'Дата выпуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NREL_QUANT',
SCAPTION => 'Количество выпуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
/* Обходим данные */
@ -2029,54 +2029,54 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOCPREF',
SCAPTION => 'Префикс',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOCNUMB',
SCAPTION => 'Номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DEXEC_DATE',
SCAPTION => 'Дата запуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT',
SCAPTION => 'Количество запуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DREL_DATE',
SCAPTION => 'Дата выпуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NREL_QUANT',
SCAPTION => 'Количество выпуска',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_FACT',
SCAPTION => 'Сдано',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NPROCENT',
SCAPTION => '% готовности',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
/* Обходим данные */
@ -2784,7 +2784,7 @@ create or replace package body PKG_P8PANELS_MECHREC as
end if;
/* Инициализируем диаграмму Ганта */
RG := PKG_P8PANELS_VISUAL.TGANTT_MAKE(STITLE => SPLAN_TITLE,
NZOOM => PKG_P8PANELS_VISUAL.NGANTT_ZOOM_DAY,
NZOOM => PKG_P8PANELS_VISUAL.GANTT_ZOOM_DAY(),
BREAD_ONLY_DATES => BREAD_ONLY_DATES,
BREAD_ONLY_PROGRESS => true);
/* Инициализируем динамические атрибуты к спецификациям */
@ -3275,42 +3275,42 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOC_INFO',
SCAPTION => 'Документ (тип, №, дата)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT',
SCAPTION => 'Количество план',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NPROCENT',
SCAPTION => 'Готовность партии',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NPRIOR_PARTY',
SCAPTION => 'Приоритет партии',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SPROD_ORDER',
SCAPTION => 'Заказ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
/*! Пока отключен */
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NCHANGE_FACEACC',
SCAPTION => 'Изменить заказ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false,
BORDER => true);
/* Считываем рег. номер связанной спецификации из "Производственная программа" */
@ -3548,52 +3548,52 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSTATE',
SCAPTION => 'Состояние',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SOPER_NUMB',
SCAPTION => 'Номер операции',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SROUTSHTSP_NAME',
SCAPTION => 'Операция',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSUBDIV',
SCAPTION => 'Цех, участок',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_PLAN',
SCAPTION => 'План',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_FACT',
SCAPTION => 'Факт',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NT_SHT_PLAN',
SCAPTION => 'Трудоемкость план',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NLABOUR_FACT',
SCAPTION => 'Трудоемкость факт',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMUNIT',
SCAPTION => 'ЕИ трудоемкости',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
/* Обходим данные */
begin
@ -3741,29 +3741,29 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSTATE',
SCAPTION => 'Состояние',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SDOC_INFO',
SCAPTION => 'Документ (тип, №, дата)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_FACT',
SCAPTION => 'Количество сдано',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DDUE_DATE',
SCAPTION => 'Дата сдачи',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => true,
BORDER => true);
/* Считываем рег. номер связанной спецификации из "Производственная программа" */
@ -4013,17 +4013,17 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSTATUS',
SCAPTION => 'Статус',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SPROD_ORDER',
SCAPTION => 'Заказ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true,
SHINT => 'Содержит ссылку на связанные сдаточные накладные.',
@ -4031,7 +4031,7 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRES_CODE',
SCAPTION => 'Обозначение',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true,
SHINT => 'Содержит ссылку на связанные маршрутные листы.<br><br>' ||
@ -4045,33 +4045,33 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRES_NAME',
SCAPTION => 'Наименование',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true,
NWIDTH => 200);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSUBDIV',
SCAPTION => 'Цех-получатель',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => true,
NWIDTH => 180);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NMAIN_QUANT',
SCAPTION => 'План',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NREL_FACT',
SCAPTION => 'Факт',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NFCROUTLST_QUANT',
SCAPTION => 'Запущено',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true,
NWIDTH => 90);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
@ -4086,12 +4086,12 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSUM_PLAN',
SCAPTION => 'Сумма "Количество план"',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSUM_FACT',
SCAPTION => 'Сумма "Количество факт"',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
/* Считываем первый и последний день месяца */
P_FIRST_LAST_DAY(DCALCDATE => sysdate, DBGNDATE => DDATE_FROM, DENDDATE => DDATE_TO);
@ -4885,58 +4885,58 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSELECT',
SCAPTION => 'Выбран',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NPRIOR_PARTY',
SCAPTION => 'Приоритет партии',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SFCROUTLST',
SCAPTION => 'МЛ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRES',
SCAPTION => 'ДСЕ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SOPER',
SCAPTION => 'Операция',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_PLAN',
SCAPTION => 'Количество',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NLABOUR_PLAN',
SCAPTION => 'Трудоемкость',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SEQCONFIG',
SCAPTION => 'Станок',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NEQCONFIG',
SCAPTION => 'Рег. номер станка',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NEQUIP_PLAN',
SCAPTION => 'Рег. номер оборудования',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DBEG_FACT',
SCAPTION => 'Дата начала факт',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
/* Обходим данные */
begin
@ -5109,31 +5109,31 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSELECT',
SCAPTION => 'Выбран',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SCODE',
SCAPTION => 'Станок',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSUM_LABOUR',
SCAPTION => 'Загрузка в н/ч',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NLOADING',
SCAPTION => 'Загрузка в %',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NEQUIPMENT',
SCAPTION => 'Рег. номер оборудования',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
/* Считываем единицу измерения минут */
FIND_DICMUNTS_CODE(NFLAG_SMART => 0,
@ -5476,24 +5476,24 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SCODE',
SCAPTION => 'Мнемокод',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SNAME',
SCAPTION => 'Наименование',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DBGNDATE',
SCAPTION => 'Действует с',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DENDDATE',
SCAPTION => 'Действует по',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE());
/* Считываем первый и последний день месяца */
P_FIRST_LAST_DAY(DCALCDATE => TO_DATE(SMONTH_YEAR, 'mm.yyyy'), DBGNDATE => DDATE_FROM, DENDDATE => DDATE_TO);
/* Обходим данные */
@ -5741,13 +5741,13 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'N_' || SDATE_NAME || '_VALUE',
SCAPTION => LPAD(D_DAY(DDATE), 2, '0'),
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
SPARENT => 'NVALUE_BY_DAYS');
/* Описываем родительскую колонку таблицы данных */
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'N_' || SDATE_NAME || '_TYPE',
SCAPTION => LPAD(D_DAY(DDATE), 2, '0'),
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false,
SPARENT => 'NVALUE_BY_DAYS');
/* Добавляем день в коллекцию */
@ -5858,33 +5858,33 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SSUBDIV',
SCAPTION => 'Участок',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true,
NWIDTH => 120);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SNAME',
SCAPTION => 'Станок',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
NWIDTH => 240);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NLOAD',
SCAPTION => 'Загрузка (н/ч)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NPROCENT_LOAD',
SCAPTION => 'Загрузка (%)',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
NWIDTH => 80);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NVALUE_BY_DAYS',
SCAPTION => 'Загрузка в н/ч по дням месяца',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
SHINT => 'Отображает сумму трудоемкости по дням месяца.<br><br>' ||
'Цвет значения отражает трудоемкость план/факт.<br>' ||
'Если дата месяца больше или равна текущей, то отображается трудоемкость "План", иначе "Факт":<br>' ||
@ -6153,27 +6153,27 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SNUMB',
SCAPTION => '% п/п',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SOPERATION',
SCAPTION => 'Содержание работ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SEXECUTOR',
SCAPTION => 'Исполнитель',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NREMN_LABOUR',
SCAPTION => 'Остаточная трудоемкость, в н/ч',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
/* Если спецификация считалась */
if (NFCPRODPLANSP is not null) then
@ -6316,27 +6316,27 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SNOMEN',
SCAPTION => 'Номенклатура',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_PLAN',
SCAPTION => 'Применяемость',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SPROVIDER',
SCAPTION => 'Поставщик',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NDEFICIT',
SCAPTION => 'Дефицит',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => true);
/* Если спецификация считалась */
if (NFCPRODPLANSP is not null) then
@ -7403,64 +7403,64 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSELECT',
SCAPTION => 'Выбран',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
NWIDTH => 75);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SFCROUTLST',
SCAPTION => 'МЛ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true,
NWIDTH => 120);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMATRES',
SCAPTION => 'ДСЕ',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true,
NWIDTH => 120);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SOPER',
SCAPTION => 'Операция',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SMANPOWER',
SCAPTION => 'Профессия',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NQUANT_PLAN',
SCAPTION => 'Количество',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRESOURCE_NUMB',
SCAPTION => 'Численность',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NLABOUR_PLAN',
SCAPTION => 'Трудоемкость',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SFIO',
SCAPTION => 'ФИО',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NPERFORM_FACT',
SCAPTION => 'Рег. номер исполнителя факт',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'DBEG_FACT',
SCAPTION => 'Дата начала факт',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_DATE(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SWORKERS_LIST',
SCAPTION => 'Список исполнителей',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => false);
/* Обходим данные */
begin
@ -7662,36 +7662,36 @@ create or replace package body PKG_P8PANELS_MECHREC as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NRN',
SCAPTION => 'Рег. номер',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSELECT',
SCAPTION => 'Выбран',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SFIO',
SCAPTION => 'ФИО',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SPROFESSION',
SCAPTION => 'Профессия',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NSUM_LABOUR',
SCAPTION => 'Загрузка в н/ч',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NLOADING',
SCAPTION => 'Загрузка в %',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BORDER => true);
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NEQUIPMENT',
SCAPTION => 'Рег. номер оборудования',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
BVISIBLE => false);
/* Считываем единицу измерения минут */
FIND_DICMUNTS_CODE(NFLAG_SMART => 0,

File diff suppressed because it is too large Load Diff

View File

@ -1271,7 +1271,7 @@ create or replace package body PKG_P8PANELS_RRPCONFED as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SROW_NAME',
SCAPTION => 'Наименование строки',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
NWIDTH => NCOL_WIDTH);
/* Остальные колонки это графы настройки РО - строим запрос по графам показателей */
OPEN_ROWS_COLS_CUR(NRRPCONFSCTN => NRRPCONFSCTN, STABLE => 'RRPCOLUMN', NORDER => NCOL_ORDER, ICURSOR => ICURSOR);
@ -1286,7 +1286,7 @@ create or replace package body PKG_P8PANELS_RRPCONFED as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => DG_COL_NAME_BY_RRPCOLUMN(NRRPCOLUMN => NCOL_RN),
SCAPTION => SCOL_NAME,
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
NWIDTH => NCOL_WIDTH);
end loop;
/* Освобождаем курсор */

View File

@ -362,14 +362,14 @@ create or replace package body PKG_P8PANELS_SAMPLES as
/* Инициализируем таблицу данных */
RDG := PKG_P8PANELS_VISUAL.TDG_MAKE(BFIXED_HEADER => true,
NFIXED_COLUMNS => 2,
SPAGES_POSITION => PKG_P8PANELS_VISUAL.STABLE_PAGES_POSITION_BOTTOM,
SPAGES_ALIGN => PKG_P8PANELS_VISUAL.STABLE_PAGES_ALIGN_RIGHT,
SPAGES_POSITION => PKG_P8PANELS_VISUAL.TABLE_PAGES_POSITION_BOTTOM(),
SPAGES_ALIGN => PKG_P8PANELS_VISUAL.TABLE_PAGES_ALIGN_RIGHT(),
BMORE_PAGES => case NUSE_MORE_BUTTON when 1 then true else false end);
/* Описываем колонки таблицы данных */
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SAGNABBR',
SCAPTION => 'Мнемокод',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SCOND_FROM => 'AgentAbbr',
BVISIBLE => true,
BORDER => true,
@ -378,7 +378,7 @@ create or replace package body PKG_P8PANELS_SAMPLES as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SAGNINFO',
SCAPTION => 'Сведения',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
BVISIBLE => true,
BORDER => false,
BFILTER => false,
@ -387,7 +387,7 @@ create or replace package body PKG_P8PANELS_SAMPLES as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SAGNNAME',
SCAPTION => 'Наименование',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR(),
SCOND_FROM => 'AgentName',
BVISIBLE => true,
BORDER => true,
@ -399,7 +399,7 @@ create or replace package body PKG_P8PANELS_SAMPLES as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'NAGNTYPE',
SCAPTION => 'Тип',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(),
SCOND_FROM => 'AgentType',
BVISIBLE => true,
BORDER => true,
@ -415,11 +415,11 @@ create or replace package body PKG_P8PANELS_SAMPLES as
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SFULLNAME',
SCAPTION => 'Полное наименование',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR());
PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG,
SNAME => 'SAGNIDNUMB',
SCAPTION => 'ИНН',
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
SDATA_TYPE => PKG_P8PANELS_VISUAL.DATA_TYPE_STR());
/* Обходим данные */
begin
/* Добавляем подсказку совместимости */
@ -548,9 +548,9 @@ create or replace package body PKG_P8PANELS_SAMPLES as
RATTR_VALS PKG_P8PANELS_VISUAL.TCHART_DATASET_ITEM_ATTR_VALS; -- Атрибуты элемента набора данных
begin
/* Сформируем заголовок графика */
RCH := PKG_P8PANELS_VISUAL.TCHART_MAKE(STYPE => PKG_P8PANELS_VISUAL.SCHART_TYPE_BAR,
RCH := PKG_P8PANELS_VISUAL.TCHART_MAKE(STYPE => PKG_P8PANELS_VISUAL.CHART_TYPE_BAR(),
STITLE => 'Топ 5 контрагентов по сумме договоров',
SLGND_POS => PKG_P8PANELS_VISUAL.SCHART_LGND_POS_RIGHT);
SLGND_POS => PKG_P8PANELS_VISUAL.CHART_LGND_POS_RIGHT());
/* Сформируем набор данных */
RCH_DS := PKG_P8PANELS_VISUAL.TCHART_DATASET_MAKE(SCAPTION => 'Сумма договоров');
/* Обходим договоры, сгруппированные по контрагентам */
@ -728,7 +728,7 @@ create or replace package body PKG_P8PANELS_SAMPLES as
begin
/* Инициализируем диаграмму Ганта */
RG := PKG_P8PANELS_VISUAL.TGANTT_MAKE(STITLE => 'Задачи на ' || TO_CHAR(EXTRACT(year from sysdate)) || ' год',
NZOOM => PKG_P8PANELS_VISUAL.NGANTT_ZOOM_MONTH);
NZOOM => PKG_P8PANELS_VISUAL.GANTT_ZOOM_MONTH());
/* Добавим динамические атрибуты к задачам */
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK_ATTR(RGANTT => RG, SNAME => 'type', SCAPTION => 'Тип', BVISIBLE => true);
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK_ATTR(RGANTT => RG,
@ -1337,7 +1337,7 @@ create or replace package body PKG_P8PANELS_SAMPLES as
SVALUE => '1000',
SICON => 'downloading',
NELEVATION => 2,
SVARIANT => PKG_P8PANELS_VISUAL.SINDICATOR_VARIANT_ELEVATION,
SVARIANT => PKG_P8PANELS_VISUAL.INDICATOR_VARIANT_ELEVATION(),
SBACKGROUND_COLOR => '#63a1df',
SCOLOR => 'black');
/* Сериализуем собранные данные */

View File

@ -114,13 +114,13 @@ create or replace package body PKG_P8PANELS_SETTINGS as
/* Исходим от типа данных */
case SDATA_TYPE
/* Строка */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_STR then
when PKG_P8PANELS_VISUAL.DATA_TYPE_STR() then
NRESULT := NDATA_TYPE_STR;
/* Число */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB then
when PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB() then
NRESULT := NDATA_TYPE_NUM;
/* Дата */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE then
when PKG_P8PANELS_VISUAL.DATA_TYPE_DATE() then
NRESULT := NDATA_TYPE_DATE;
else
P_EXCEPTION(0, 'Не определен тип данных параметра.');
@ -141,13 +141,13 @@ create or replace package body PKG_P8PANELS_SETTINGS as
case NDATA_TYPE
/* Строка */
when NDATA_TYPE_STR then
SRESULT := PKG_P8PANELS_VISUAL.SDATA_TYPE_STR;
SRESULT := PKG_P8PANELS_VISUAL.DATA_TYPE_STR();
/* Число */
when NDATA_TYPE_NUM then
SRESULT := PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB;
SRESULT := PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB();
/* Дата */
when NDATA_TYPE_DATE then
SRESULT := PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE;
SRESULT := PKG_P8PANELS_VISUAL.DATA_TYPE_DATE();
else
P_EXCEPTION(0, 'Не определен тип данных параметра.');
end case;
@ -343,7 +343,7 @@ create or replace package body PKG_P8PANELS_SETTINGS as
end if;
/* Если тип данных не поддерживается */
if (SDATA_TYPE not in
(PKG_P8PANELS_VISUAL.SDATA_TYPE_STR, PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB, PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE)) then
(PKG_P8PANELS_VISUAL.DATA_TYPE_STR(), PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB(), PKG_P8PANELS_VISUAL.DATA_TYPE_DATE())) then
P_EXCEPTION(0,
'Параметры типа "%s" не поддерживаются.',
COALESCE(TO_CHAR(SDATA_TYPE), '<НЕ УКАЗАН>'));
@ -1018,10 +1018,10 @@ create or replace package body PKG_P8PANELS_SETTINGS as
/* Исходим от типа данных */
case SDATA_TYPE
/* Строка */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_STR then
when PKG_P8PANELS_VISUAL.DATA_TYPE_STR() then
SVALUE_STR := SVALUE;
/* Число */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB then
when PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB() then
/* Конвертируем в число */
begin
NVALUE_NUM := TO_NUMBER(SVALUE);
@ -1031,7 +1031,7 @@ create or replace package body PKG_P8PANELS_SETTINGS as
'Ошибка преобразования значения "' || SVALUE || '" в число.');
end;
/* Дата */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE then
when PKG_P8PANELS_VISUAL.DATA_TYPE_DATE() then
begin
DVALUE_DATE := TO_DATE(SVALUE, 'yyyy-mm-dd');
exception
@ -1058,13 +1058,13 @@ create or replace package body PKG_P8PANELS_SETTINGS as
/* Исходим от типа данных */
case SDATA_TYPE
/* Строка */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_STR then
when PKG_P8PANELS_VISUAL.DATA_TYPE_STR() then
SRESULT := SVALUE_STR;
/* Число */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB then
when PKG_P8PANELS_VISUAL.DATA_TYPE_NUMB() then
SRESULT := TO_CHAR(NVALUE_NUM);
/* Дата */
when PKG_P8PANELS_VISUAL.SDATA_TYPE_DATE then
when PKG_P8PANELS_VISUAL.DATA_TYPE_DATE() then
SRESULT := TO_CHAR(DVALUE_DATE, 'yyyy-mm-dd');
else
P_EXCEPTION(0, 'Не определен тип данных параметра.');
@ -1521,4 +1521,4 @@ create or replace package body PKG_P8PANELS_SETTINGS as
end PANELS_INIT;
end PKG_P8PANELS_SETTINGS;
/
/

View File

@ -372,6 +372,68 @@ create or replace package PKG_P8PANELS_VISUAL as
SCOLOR PKG_STD.TSTRING := null -- Цвет шрифта и иконки (HTML-код, null - использовать цвет по умолчанию для состояния)
);
/* Функции констант - типы данных */
function DATA_TYPE_STR return varchar2; -- Тип данных "строка"
function DATA_TYPE_NUMB return varchar2; -- Тип данных "число"
function DATA_TYPE_DATE return varchar2; -- Тип данных "дата"
/* Функции констант - направление сортировки */
function ORDER_DIRECTION_ASC return varchar2; -- По возрастанию
function ORDER_DIRECTION_DESC return varchar2; -- По убыванию
/* Функции констант - таблица - расположение области страниц по горизонтали */
function TABLE_PAGES_ALIGN_LEFT return varchar2; -- Слева
function TABLE_PAGES_ALIGN_RIGHT return varchar2; -- Справа
function TABLE_PAGES_ALIGN_CENTER return varchar2; -- По середине
/* Функции констант - таблица - расположение области страниц по вертикали */
function TABLE_PAGES_POSITION_TOP return varchar2; -- Наверху
function TABLE_PAGES_POSITION_BOTTOM return varchar2; -- Внизу
function TABLE_PAGES_POSITION_BOTH return varchar2; -- Наверху и внизу
/* Функции констант - диаграмма Ганта - масштаб */
function GANTT_ZOOM_QUARTER_DAY return number; -- Четверть дня
function GANTT_ZOOM_HALF_DAY return number; -- Пол дня
function GANTT_ZOOM_DAY return number; -- День
function GANTT_ZOOM_WEEK return number; -- Неделя
function GANTT_ZOOM_MONTH return number; -- Месяц
/* Функции констант - график - тип */
function CHART_TYPE_BAR return varchar2; -- Столбчатая
function CHART_TYPE_LINE return varchar2; -- Линейная
function CHART_TYPE_PIE return varchar2; -- Круговая
function CHART_TYPE_DOUGHNUT return varchar2; -- Кольцевая
/* Функции констант - график - расположение легенды */
function CHART_LGND_POS_LEFT return varchar2; -- Слева
function CHART_LGND_POS_RIGHT return varchar2; -- Справа
function CHART_LGND_POS_TOP return varchar2; -- Наверху
function CHART_LGND_POS_BOTTOM return varchar2; -- Внизу
/* Функции констант - циклограмма - масштаб */
function CYCLOGRAM_ZOOM_MIN return number; -- Минимальный (0.2 от исходного)
function CYCLOGRAM_ZOOM_TINY return number; -- Мелкий (0.4 от исходного)
function CYCLOGRAM_ZOOM_SMALL return number; -- Уменьшенный (0.7 от исходного)
function CYCLOGRAM_ZOOM_DEFAULT return number; -- Исходный
function CYCLOGRAM_ZOOM_LARGE return number; -- Увеличенный (1.5 от исходного)
function CYCLOGRAM_ZOOM_HUGE return number; -- Большой (2 от исходного)
function CYCLOGRAM_ZOOM_MAX return number; -- Максимальный (2.5 от исходного)
/* Функции констант - циклограмма - оформление */
function CYCLOGRAM_GROUP_DEF_WIDTH return number; -- Высота заголовка группы (по умолчанию)
function CYCLOGRAM_GROUP_DEF_HEIGHT return number; -- Ширина заголовка группы (по умолчанию)
function CYCLOGRAM_LINE_HEIGHT return number; -- Высота строк циклограммы
/* Функции констант - индикатор - состояния */
function INDICATOR_STATE_UNDEFINED return varchar2; -- Неопределено
function INDICATOR_STATE_OK return varchar2; -- Позитивное
function INDICATOR_STATE_ERR return varchar2; -- Негативное
function INDICATOR_STATE_WARN return varchar2; -- Пограничное
/* Функции констант - индикатор - варианты исполнения */
function INDICATOR_VARIANT_ELEVATION return varchar2; -- Парящий
function INDICATOR_VARIANT_OUTLINED return varchar2; -- Плоский с рамкой
/* Расчет диапаона выдаваемых записей */
procedure UTL_ROWS_LIMITS_CALC
(
@ -921,6 +983,68 @@ create or replace package body PKG_P8PANELS_VISUAL as
/* Константы - параметры условий отбора */
SCOND_FROM_POSTFIX constant PKG_STD.TSTRING := 'From'; -- Постфикс наименования нижней границы условия отбора
SCOND_TO_POSTFIX constant PKG_STD.TSTRING := 'To'; -- Постфикс наименования верхней границы условия отбора
/* Функции констант - типы данных */
function DATA_TYPE_STR return varchar2 as begin return SDATA_TYPE_STR; end; -- Тип данных "строка"
function DATA_TYPE_NUMB return varchar2 as begin return SDATA_TYPE_NUMB; end; -- Тип данных "число"
function DATA_TYPE_DATE return varchar2 as begin return SDATA_TYPE_DATE; end; -- Тип данных "дата"
/* Функции констант - направление сортировки */
function ORDER_DIRECTION_ASC return varchar2 as begin return SORDER_DIRECTION_ASC; end; -- По возрастанию
function ORDER_DIRECTION_DESC return varchar2 as begin return SORDER_DIRECTION_DESC; end; -- По убыванию
/* Функции констант - таблица - расположение области страниц по горизонтали */
function TABLE_PAGES_ALIGN_LEFT return varchar2 as begin return STABLE_PAGES_ALIGN_LEFT; end; -- Слева
function TABLE_PAGES_ALIGN_RIGHT return varchar2 as begin return STABLE_PAGES_ALIGN_RIGHT; end; -- Справа
function TABLE_PAGES_ALIGN_CENTER return varchar2 as begin return STABLE_PAGES_ALIGN_CENTER; end; -- По середине
/* Функции констант - таблица - расположение области страниц по вертикали */
function TABLE_PAGES_POSITION_TOP return varchar2 as begin return STABLE_PAGES_POSITION_TOP; end; -- Наверху
function TABLE_PAGES_POSITION_BOTTOM return varchar2 as begin return STABLE_PAGES_POSITION_BOTTOM; end; -- Внизу
function TABLE_PAGES_POSITION_BOTH return varchar2 as begin return STABLE_PAGES_POSITION_BOTH; end; -- Наверху и внизу
/* Функции констант - диаграмма Ганта - масштаб */
function GANTT_ZOOM_QUARTER_DAY return number as begin return NGANTT_ZOOM_QUARTER_DAY; end; -- Четверть дня
function GANTT_ZOOM_HALF_DAY return number as begin return NGANTT_ZOOM_HALF_DAY; end; -- Пол дня
function GANTT_ZOOM_DAY return number as begin return NGANTT_ZOOM_DAY; end; -- День
function GANTT_ZOOM_WEEK return number as begin return NGANTT_ZOOM_WEEK; end; -- Неделя
function GANTT_ZOOM_MONTH return number as begin return NGANTT_ZOOM_MONTH; end; -- Месяц
/* Функции констант - график - тип */
function CHART_TYPE_BAR return varchar2 as begin return SCHART_TYPE_BAR; end; -- Столбчатая
function CHART_TYPE_LINE return varchar2 as begin return SCHART_TYPE_LINE; end; -- Линейная
function CHART_TYPE_PIE return varchar2 as begin return SCHART_TYPE_PIE; end; -- Круговая
function CHART_TYPE_DOUGHNUT return varchar2 as begin return SCHART_TYPE_DOUGHNUT; end; -- Кольцевая
/* Функции констант - график - расположение легенды */
function CHART_LGND_POS_LEFT return varchar2 as begin return SCHART_LGND_POS_LEFT; end; -- Слева
function CHART_LGND_POS_RIGHT return varchar2 as begin return SCHART_LGND_POS_RIGHT; end; -- Справа
function CHART_LGND_POS_TOP return varchar2 as begin return SCHART_LGND_POS_TOP; end; -- Наверху
function CHART_LGND_POS_BOTTOM return varchar2 as begin return SCHART_LGND_POS_BOTTOM; end; -- Внизу
/* Функции констант - циклограмма - масштаб */
function CYCLOGRAM_ZOOM_MIN return number as begin return NCYCLOGRAM_ZOOM_MIN; end; -- Минимальный (0.2 от исходного)
function CYCLOGRAM_ZOOM_TINY return number as begin return NCYCLOGRAM_ZOOM_TINY; end; -- Мелкий (0.4 от исходного)
function CYCLOGRAM_ZOOM_SMALL return number as begin return NCYCLOGRAM_ZOOM_SMALL; end; -- Уменьшенный (0.7 от исходного)
function CYCLOGRAM_ZOOM_DEFAULT return number as begin return NCYCLOGRAM_ZOOM_DEFAULT; end; -- Исходный
function CYCLOGRAM_ZOOM_LARGE return number as begin return NCYCLOGRAM_ZOOM_LARGE; end; -- Увеличенный (1.5 от исходного)
function CYCLOGRAM_ZOOM_HUGE return number as begin return NCYCLOGRAM_ZOOM_HUGE; end; -- Большой (2 от исходного)
function CYCLOGRAM_ZOOM_MAX return number as begin return NCYCLOGRAM_ZOOM_MAX; end; -- Максимальный (2.5 от исходного)
/* Функции констант - циклограмма - оформление */
function CYCLOGRAM_GROUP_DEF_WIDTH return number as begin return NCYCLOGRAM_GROUP_DEF_WIDTH; end; -- Высота заголовка группы (по умолчанию)
function CYCLOGRAM_GROUP_DEF_HEIGHT return number as begin return NCYCLOGRAM_GROUP_DEF_HEIGHT; end; -- Ширина заголовка группы (по умолчанию)
function CYCLOGRAM_LINE_HEIGHT return number as begin return NCYCLOGRAM_LINE_HEIGHT; end; -- Высота строк циклограммы
/* Функции констант - индикатор - состояния */
function INDICATOR_STATE_UNDEFINED return varchar2 as begin return SINDICATOR_STATE_UNDEFINED; end; -- Неопределено
function INDICATOR_STATE_OK return varchar2 as begin return SINDICATOR_STATE_OK; end; -- Позитивное
function INDICATOR_STATE_ERR return varchar2 as begin return SINDICATOR_STATE_ERR; end; -- Негативное
function INDICATOR_STATE_WARN return varchar2 as begin return SINDICATOR_STATE_WARN; end; -- Пограничное
/* Функции констант - индикатор - варианты исполнения */
function INDICATOR_VARIANT_ELEVATION return varchar2 as begin return SINDICATOR_VARIANT_ELEVATION; end; -- Парящий
function INDICATOR_VARIANT_OUTLINED return varchar2 as begin return SINDICATOR_VARIANT_OUTLINED; end; -- Плоский с рамкой
/* Расчет диапаона выдаваемых записей */
procedure UTL_ROWS_LIMITS_CALC