diff --git a/README.md b/README.md index f2b0ea8..0266d2d 100644 --- a/README.md +++ b/README.md @@ -340,6 +340,59 @@ const MyPanel = () => { 8. Выдайте права но новое действие в "Администраторе", при необходимости - начните новый сеанс в "ПАРУС 8 Онлайн" с очисткой системного кэша. +#### Настройка КОР-действия для вызова панели "Выдача сменного задания на участок" из раздела "Сменные задания" + +Входящая в состав поставки фреймворка панель "Выдача сменного задания на участок" доступна для вызова из раздела "Сменные задания" (приложение "Планирование и учёт в дискретном производстве", главное меню > "Документы" > "Сменные задания"). + +Для настройки этой возможности: + +1. Откройте раздел "Классы" приложения "Конструктор отраслевых расширений" (главное меню > "Учёт" > "Классы") +2. В дереве классов выберите "Сменные задания", а в списке классов - класс с кодом "CostJobs" +3. В спецификации "Методы", выбранного класса, зарегистрируйте новый метод со следующими атрибутами: + +- `Мнемокод` - P8PANELS_OPEN +- `Наименование` - P8PANELS_OPEN +- `Тип метода` - Встроенный +- `Доступность` - Клиентский + +4. Для добавленного метода `P8PANELS_OPEN` в спецификации "Параметры" зарегистрируйте следующий набор параметров: + +| Имя | Наименование | Тип | Домен | Обязательный | Тип привязки | Контекст | Параметр действия | +| -------- | ------------------- | ------- | ------- | ------------ | ----------------- | -------------------- | ----------------- | +| NRN | Рег. номер записи | Входной | TRN | Нет | Контекст | Идентификатор записи | | +| SPANEL | Наименование панели | Входной | TSTRING | Да | Параметр действия | | SPANEL | +| SCAPTION | Заголовок вкладки | Входной | TSTRING | Нет | Параметр действия | | SCAPTION | + +5. В спецификации "Действия", выбранного класса, зарегистрируйте новое действие со следующими атрибутами: + +- `Тип` - Нестандартное +- `Код` - FCJOBS_OPEN_JOBS_MANAGE_MP +- `Наименование` - Открытие панели "Выдача сменного задания на участок" +- `Технология производства` - Конструктор +- `Реализующий метод` - P8PANELS_OPEN +- `Обработка записей` - Для одной текущей записи +- `Завершение транзакции` - После каждого вызова действия +- `Обновление выборки` - Не обновлять + +6. Для добавленного действия `FCJOBS_OPEN_JOBS_MANAGE_MP` в спецификации "Параметры" зарегистрируйте следующий набор параметров: + +| Имя | Домен | Тип привязки | Значение | +| -------- | ------- | ------------ | ---------------------------------- | +| SPANEL | TSTRING | Значение | MechRecCostJobsManageMP | +| SCAPTION | TSTRING | Значение | Выдача сменного задания на участок | + +7. Откройте редактор формы представления данных класса "CostJobs" ("Сменные задания"). + +Для этого отметьте в списке классов запись с кодом "CostJobs", перейдите на закладку "Методы вызова", укажите метод вызова "main", в его контекстном меню укажите "Формы", в появившемся списке форм выполните действие "Редактор" для формы с наименованием "Форма просмотра". + +В открывшемся редакторе формы перейдите в режим редактирования всплывающего меню заголовка (закладка "Таблицы", таблица "CostJobs", затем кнопка "Редактор источника", установить фокус на форме представления данных щелчком мыши, затем пункт "Всплывающее меню" в "Инспекторе объектов"). Найдите в меню пункт, созданный Системой для действия, зарегистрированного на шаге 5 (как правило имеет метку, совпадающую с наименованием действия). Расположите (перетаскиванием) этот пункт меню сразу после пункта "Отработать исполнение по штрих-кодам". Укажите для этого пункта следующие параметры в "Инспекторе объектов": + +- `Заголовок` - Выдать сменное задание на участок… + +Закройте окна редакторов с сохранением изменений. + +8. Выдайте права но новое действие в "Администраторе", при необходимости - начните новый сеанс в "ПАРУС 8 Онлайн" с очисткой системного кэша. + #### Настройка КОР-действия для вызова панели "Производственная программа" из раздела "Планы и отчеты производства изделий" Входящая в состав поставки фреймворка панель "Производственная программа" доступна для вызова из спецификации "Выпуск" раздела "Планы и отчеты производства изделий" (приложение "Планирование и учёт в дискретном производстве", главное меню > "Документы" > "Планы и отчеты производства изделий"). diff --git a/app/panels/mech_rec_cost_jobs_manage_mp/hooks.js b/app/panels/mech_rec_cost_jobs_manage_mp/hooks.js index 5d319a7..588ad07 100644 --- a/app/panels/mech_rec_cost_jobs_manage_mp/hooks.js +++ b/app/panels/mech_rec_cost_jobs_manage_mp/hooks.js @@ -83,7 +83,9 @@ const useCostJobsSpecs = task => { selectedRow: {}, reload: true, pageNumber: 1, - morePages: true + morePages: true, + fixedHeader: false, + fixedColumns: 0 }); //Подключение к контексту взаимодействия с сервером diff --git a/app/panels/mech_rec_cost_jobs_manage_mp/mech_rec_cost_jobs_manage_mp.js b/app/panels/mech_rec_cost_jobs_manage_mp/mech_rec_cost_jobs_manage_mp.js index 806da82..798e5df 100644 --- a/app/panels/mech_rec_cost_jobs_manage_mp/mech_rec_cost_jobs_manage_mp.js +++ b/app/panels/mech_rec_cost_jobs_manage_mp/mech_rec_cost_jobs_manage_mp.js @@ -379,7 +379,7 @@ const MechRecCostJobs = () => { { }) } headCellRender={prms => headCellRender({ ...prms })} - fixedHeader={true} + fixedHeader={costJobsSpecs.fixedHeader} + fixedColumns={costJobsSpecs.fixedColumns} /> @@ -431,7 +432,7 @@ const MechRecCostJobs = () => { NROW_FROM, NROW_TO => NROW_TO); /* Инициализируем таблицу данных */ - RDG := PKG_P8PANELS_VISUAL.TDG_MAKE(BFIXED_HEADER => true, NFIXED_COLUMNS => 8); + RDG := PKG_P8PANELS_VISUAL.TDG_MAKE(BFIXED_HEADER => true, NFIXED_COLUMNS => 3); /* Описываем колонки таблицы данных */ PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG, SNAME => 'NRN', @@ -7269,17 +7269,20 @@ create or replace package body PKG_P8PANELS_MECHREC as 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.SDATA_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, - BORDER => true); + 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, - BORDER => true); + BORDER => true, + NWIDTH => 120); PKG_P8PANELS_VISUAL.TDG_ADD_COL_DEF(RDATA_GRID => RDG, SNAME => 'SOPER', SCAPTION => 'Операция',