7.3
генерации представления раздела
генерация
Технические вопросы
7.x

Здравствуйте, подскажите, есть ли в BPM 7.3 аналог NUISchemaGenerator? Если есть, то как им воспользоваться?
Также интересует возможность автоматического приведения кода 7.2 к структуре кода 7.3

Нравится

1 комментарий

Александр, в bpm'online 7.3 отсутствует аналог NUISchemaGenerator и инструмент автоматического приведения кода 7.2 к структуре кода 7.3
Создание разделов и добавление деталей осуществляется посредством визуального мастера разделов.

Показать все комментарии
Технические вопросы
5.x

Добрый день

Поле "Заголовок" в активности с типом Задача у нас почему-то соответствует полю "Тема" в активности с типом Е-мейл. Поэтому, когда я настроила:

то получилось, что если я добавляю е-мейл активность с детали активности конкретного Инцидента, то в теме этой е-мейл активности по умолчанию подставляются данные с поля "Признаки/симптомы" этого Инцидента. Вопрос: как мне сделать так, чтобы в этом случае в теме е-мейл активности подставлялось "Обращение №... " (где №... - уникальный номер Инцидента). Заранее спасибо

Нравится

6 комментариев

Здравствуйте, Татьяна!

Вы можете в методе EnableSendButton процесса страницы карточки Email, а конкретно в условии IsNew выполнять проверку:

if (dataSource.ActiveRow.GetTypedColumnValue<Guid>("IncidentId") != Guid.Empty)
			{
				dataSource.ActiveRow.SetColumnValue("Title", "!!!!!!!!!!!!!!!!");	
			}

где вместо !!!!!! формируйте необходимый Вам текст темы письма.

Андрей, добрый день.

Сработало так:
if (Page.DataSource.ActiveRow.GetTypedColumnValue("IncidentId") != Guid.Empty)
{
Page.DataSource.ActiveRow.SetColumnValue("Title", "Обращение №");
}

Подскажите, а как сделать так, чтобы в Теме е-мейл активности выводилось не только "Обращение №", а добавлялся еще и номер конкретного инцидента (с детали которого была создана новая е-мейл активность), напр: "Обращение №25".
Заранее спасибо

Татьяна, используйте следующий код:

var IncidentId = Page.DataSource.ActiveRow.GetTypedColumnValue<Guid>("IncidentId");
	if (IncidentId != Guid.Empty)
     {
	   var incidentNumber = String.Empty;
	   var incident = new Terrasoft.Configuration.ServiceRequest(Page.UserConnection);
       if (incident.FetchFromDB(IncidentId)) {
       incidentNumber = incident.Number;  
	   }
 
     Page.DataSource.ActiveRow.SetColumnValue("Title", "Обращение №" + incidentNumber);      
     }

Огромное спасибо. Все работает.

Добрый день.
А этим же способом никак нельзя вытянуть в Активность.Кому данные из Инцидент.Контакт.Е-мейл ?

Татьяна, конечно Вы можете использовать данный способ.
Считайте из инцидента контакт, обратитесь к объекту Contact и получите запись нужного контакта (через FetchFromDB).
Затем можно получить Email контакта и записать его в колонку Recepient активности.

Показать все комментарии

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

"operation": "insert",
                "name": "UsrSumm",
                "values": {
                        "layout": {
                                "column": 0,
                                "row": 7,
                                "colSpan": 12,
                                "rowSpan": 1
                        },
                        "bindTo": "UsrSumm",
                        "caption": {
                                "bindTo": "Resources.Strings.SummCaption"
                        },
                        "textSize": 0,
                        "labelConfig": {
                                "visible": true
                        }
                },
                "parentName": "Header",
                "propertyName": "items",
                "index": 9
        },

Нравится

2 комментария

Анастасия, чтобы поле было доступно только для чтения добавьте в блок "values": запись вида

"enabled": false

Ваш код будет иметь вид:

...
"values": {
                        "layout": {
                                "column": 0,
                                "row": 7,
                                "colSpan": 12,
                                "rowSpan": 1
                        },
                        "bindTo": "UsrSumm",
                        "caption": {
                                "bindTo": "Resources.Strings.SummCaption"
                        },
                        "textSize": 0,
                        "labelConfig": {
                                "visible": true
                        },
			"enabled": false
                },
...

Чтобы значение изменялось при изменении других полей, необходимо:
- добавить код в блок attributes:

"UsrSumm": {
			dataValueType: Terrasoft.DataValueType.FLOAT,
			dependencies: [
			{
			columns: ["CurrencyRate", "PrimaryAmount"],
			methodName: "recalculateUsrSumm"
			  }
			 ]
			},

- затем прописать метод в блок methods:

recalculateUsrSumm: function() {
		.....
			},
Показать все комментарии
Технические вопросы
5.x

Здравствуйте. Использую систему BPMonline версии 5.4
Как правильно прописать условие в БП в элементе "условный поток" после чтения данных? В частности, мне нужно проверить заполнено ли поле Ответственный в карточке объекта и написать условие, если ответственный не пустой, то создаю одну активность, если ответственный пустой, то создаю другую активность.
Скриншот БП приложила к теме.

Нравится

3 комментария

Добрый день.
Можно проверить количество полученных записей.

ReadDataUserTask.ResultRowsCount > 0

У одной ветки указала это условие, БП пошел на создание активности.
У другой ветки, где стоит поток по умолчанию,
Выдает ошибку: Неправильный синтаксис около ключевого слова "ORDER".

Падает не на условии, а на элементе "Читать данные ответственного"

Тогда лучше переделать БП следующим образом:

БП

Условие:

CaseReadDataUserTask.ResultEntity.GetTypedColumnValue<Guid>("OwnerId") != Guid.Empty
Показать все комментарии
7.3
Деталь
добавить
Технические вопросы
7.x

Здравствуйте. Пытаюсь добавить новую деталь в раздел Контакты на вкладку история.
1. Создал схему представления детали с реестром (RequestDetail), в зависимостях указал родительский объект Request
2. создал замещающий клиентский модуль для страницы раздела контакт (ContactPageV2)

/////////////////////////
//код СontactPageV2//
/////////////////////////

define("ContactPageV2", ["ContactPageV2Resources",
"ConfigurationItemGenerator"],
function(resources) {
return {
entitySchemaName: "Contact",
details: /**SCHEMA_DETAILS*/{
Request: {
/*// name: "Request", - ����� ���� ������� name, �� ��������� ������� ��� ������� ��������� ������
filter: {masterColumn: "Id", detailColumn: "ContactId"}, // masterColumn ������������, �� ��������� - "Id"
filterMethod: function() {
}, // ����� ��� �������� ������� - ��� ������� ����������
defaultValues: {"Number": "50",
"Name": "Default11"} // �������� �� ���������*/
schemaName: "RequestDetail",
filter: {
masterColumn: "Id",
detailColumn: "Contact"
}
}
}/**SCHEMA_DETAILS*/,
diff: /**SCHEMA_DIFF*/[

{
"operation": "insert",
"parentName": "HistoryTab",
"propertyName": "items",
"name": "Request",
"values": {
"itemType": Terrasoft.ViewItemType.DETAIL
}
}
]/**SCHEMA_DIFF*/
};
});

///////////////////////
//код RequestDetail//
///////////////////////

define("RequestDetail", ["terrasoft","Request","RequestDetailResources"],
function(terrasoft,entitySchema,resources) {
return {
/**
* ��� ����� �������
* @type {String}
*/

entitySchemaName: "Request",
messages: { },
attributes: { },
diff: [ {
"operation": "insert",
"name": "DataGrid",
"values": {
type: "listed",
listedConfig: {
name: "DataGridListedConfig",
items: [
{
name: "NumberListedGridColumn",
bindTo: "Number",
type: Terrasoft.GridCellType.TEXT,
position: {
column: 1,
colSpan: 12
}
},
{
name: "DateListedGridColumn",
bindTo: "Date",
type: Terrasoft.GridCellType.TEXT,
position: {
column: 13,
colSpan: 6
}
}
]
},
tiledConfig: {
name: "DataGridTiledConfig",
grid: {columns: 24, rows: 3},
items: [
{
name: "NumberTiledGridColumn",
bindTo: "Number",
type: Terrasoft.GridCellType.TEXT,
position: {
row: 1,
column: 1,
colSpan: 24
},
captionConfig: {
visible: true
}
}
]
}
}
}
]
};
});

Нравится

6 комментариев

Уже разобрался. Не указал базовый объект схемы детали.

Как добавить действие детали? Ни getSectionActions, ни getActions не срабатывают.

Здравствуйте, Эмин!

Посмотрите, пожалуйста, данный топик

"Резниченко Сергей" написал:

Здравствуйте, Эмин!

Посмотрите, пожалуйста, данный топик


Данный топик является примером добавления действия для раздела. Я же пытаюсь добавить действия для ДЕТАЛИ.
После просмотра файла BaseDetailV2 от которого наследуется деталь выяснялось, что для деталей не предусмотрен базовый метод getActions. Значит действие для ДЕТАЛИ добавить нельзя. Верно?
Тогда, возможно, для каждой записи детали можно добавить кнопку? Подскажите как это реализовать.

Здравствуйте, Эмин!

Вся манипуляции с действиями детали находится в BaseGridDetailV2, там есть

// Действия
{
   "operation": "insert",
   "name": "ActionsButton",
   "parentName": "Detail",
   "propertyName": "tools",
   "values": {
      "itemType": Terrasoft.ViewItemType.BUTTON,
      "caption": {"bindTo": "Resources.Strings.ActionsButtonCaption"},
      "visible": false,
      "menu": []
   }
},

В эту схему в меню и надо добавлять. Приведу небольшой пример:

{
                                                                              "operation": "insert",
                                                                              "name": "CopyRecordMenu",
                                                                              "parentName": "ActionsButton",
                                                                              "propertyName": "menu",
                                                                              "values": {
                                                                                              "caption": {"bindTo": "Resources.Strings.CopyMenuCaption"},
                                                                                              "click": {"bindTo": "copyRecord"},
                                                                                              "enabled": {"bindTo": "getCopyRecordMenuEnabled"}
                                                                              }
                                                               },
 
 {
                                                                              "operation": "insert",
                                                                              "name": "EditRecordMenu",
                                                                              "parentName": "ActionsButton",
                                                                              "propertyName": "menu",
                                                                              "values": {
                                                                                              "caption": { "bindTo": "Resources.Strings.EditMenuCaption" },
                                                                                              "click": { "bindTo": "editRecord" },
                                                                                              "enabled": {"bindTo": "getEditRecordButtonEnabled"}
 
                                                                              }
                                                               },

"Резниченко Сергей" написал:

Огромное спасибо! Все работает

Показать все комментарии
детали
Технические вопросы
7.x

Здравствуйте! Появилась небольшая проблема.

Версия 7.1.0.473

{
                                        name: 'magazineInOpp',
                                        schemaName: 'UsrMagazineInOppDetail',
                                        type: Terrasoft.ViewModelSchemaItem.DETAIL,
                                        filterPath: 'UsrOpportunity',
                                        filterValuePath: 'Id',
                                        caption: 'Выпуски',
                                        visible: true,
                                        leftWidth: '60%',
                                        rightWidth: '40%',
                                        wrapContainerClass: 'control-group-container'
                                       
                                }

...
                        this.methods.init = function() {
                                var typeValue = {displayValue: 'xxxxxxxx', value: '2A5A7645-59E6-DF11-971B-001D60E938C6'};
                                this.set('Type', typeValue);
                               
                                this.changeDetailSubscribeByName('magazineInOpp', function() {
                                        var esq = Ext.create('Terrasoft.EntitySchemaQuery', {
                                                rootSchemaName: 'UsrMagazineInOpp'
                                        });
                                        esq.addColumn('PrimaryAmount');
                                        esq.getEntity(this.get('Id'), function(response) {
                                                if (response.success) {
                                                        var entity = response.entity;
                                                        if (entity) {
                                                                this.set('PrimaryAmount', entity.get('PrimaryAmount'));
                                                                this.RecalcAmount();
                                                        }
                                                }
                                        }, this);
                                });
                        };

После добавление записи на деталь magazineInOpp ничего не происходит. Управление в changeDetailSubscribeByName не приходит. В чем может быть дело??

Нравится

8 комментариев

Акмаль, добрый день.

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

Максим, а что значит "должна реализовывать CardModule"?

Вот код детали:

define('UsrMagazineInOppDetail', ['ext-base', 'sandbox', 'terrasoft', 'UsrMagazineInOpp', 'UsrMagazineInOppDetailStructure',
	'UsrMagazineInOppDetailResources', 'LookupUtilities'],
	function (Ext, sandbox, Terrasoft, UsrMagazineInOpp, structure, resources, LookupUtilities) {
 
		structure.userCode = function () {
			this.entitySchema = UsrMagazineInOpp;
			this.name = 'OpportunityDetailViewModel';
			this.editPageName = 'UsrMagazineInOppPage';
			this.columnsConfig = [
				{
					cols: 10,
					key: [
						{
							name: {
								bindTo: 'UsrMagazine'
							}
						}
					]
				},
				{
					cols: 8,
					key: [
						{
							name: {
								bindTo: 'UsrOpportunity'
							}
						}
					]
				}
			];
			this.loadedColumns = [
				{
					columnPath: 'UsrMagazine'
				}, {
					columnPath: 'UsrOpportunity'
				}
			];
			this.editPages = [
				{
					caption: 'Добавить выпуски',
					name: 'addMagazineItem',
					UId: '',
					bindTo: 'addMagazine'
				}
			];
 
 
			this.methods.addMagazine = function() {
				this.add(null, function() {
					var config = {
						entitySchemaName: 'UsrMagazine',
						multiSelect: true,
						columns: ['UsrCaption']
					};
					LookupUtilities.ThrowOpenLookupMessage(sandbox, config, this.addCallBack, this,
						this.getCardModuleSandboxId());
				});
			};
			this.methods.addCallBack = function(args) {
				var bq = Ext.create('Terrasoft.BatchQuery');
				var oppId = this.filterValue;
				this.selectedRows = args.selectedRows.getItems();
				this.selectedItems = [];
				this.selectedRows.forEach(function(item) {
					item.UsrOpportunityId = oppId;
					bq.add(this.getMagazineInsertQuery(item));
					this.selectedItems.push(item.value);
				}, this);
				if (bq.queries.length) {
					bq.execute(this.onContactInsert, this);
				}
			};
 
			this.methods.getMagazineInsertQuery = function(item) {
				var insert = Ext.create('Terrasoft.InsertQuery', {
					rootSchemaName: 'UsrMagazineInOpp'
				});
				insert.setParameterValue('UsrMagazine', item.value, Terrasoft.DataValueType.GUID);
				insert.setParameterValue('UsrOpportunity', item.UsrOpportunityId, Terrasoft.DataValueType.GUID);
				return insert;
			};
 
			this.methods.onContactInsert = function() {
				this.isClearGridData = true;
				this.load();
			};
 
		};
 
		return structure;
	});

Кстати, заметил, что управление приходит в changeDetailSubscribeByName при удалении записи детали...

Акмаль, видимо забыли исправить строку:
structure.userCode = function () {
this.entitySchema = UsrMagazineInOpp;
this.name = 'OpportunityDetailViewModel';
...

А "должна реализовывать CardModule" означает, что страница, на которой размещена деталь должна быть схемой представления страницы редактирования (в разделе "Конфигурация" при добавлении схемы выбирается).
Если после исправления опечатки ошибка не исправится, прошу предоставить полный код страницы, на которой деталь расположена.

Андрей, исправил - ничего не изменилось..

Вот код страницы (взято из дебаггера):

var core = require("core");
core.setModuleDescriptor('Opportunity', {path: "../../configuration/entityschema/72764ea448d4329b849e4066b9ad295e"});
core.setModuleDescriptor('GeneralDetails', {path: "../../configuration/8ec08beafecb6ebfc8ec16878fbe6342"});
core.setModuleDescriptor('BusinessRuleModule', {path: "../../configuration/f39269e10ccc645de933bc1398b43ace"});
core.setModuleDescriptor('BaseFiltersGenerateModule', {path: "../../configuration/d1ede5cb3dc78d453a16b11a8f367b0e"});
core.setModuleDescriptor('ConfigurationConstants', {path: "../../configuration/9c278fb714b211a4cb255b8c5e218968"});
core.setModuleDescriptor('UsrOpportunity1PageResources', {path: "../../configuration/ca1d896c770f13ec6f9cd8d87fa0013f"});
define('UsrOpportunity1PageResources', ['terrasoft'], function(Terrasoft) {
var localizableStrings={
	RevenueGroupTitle: 'Доход',
	SourceGroupTitle: 'Источник',
	DueGroupTitle: 'Закрытие',
	ContactAccountRequire: 'Заполнение одного из полей \"Контрагент\"" или \""Контакт\"" является обязательным.'

Здравтсвуйте, Акмаль!
Обнаружил, что у нас есть бэкап этой БД. Проверил - подписка на изменение детали работает, но у Вас есть еще ошибка в changeDetailSubscribeByName. Этот методы выполняется в контексте страницы "UsrOpportunity1Page", таким образом

this.get('Id')

вернет Id продажи, а запрос строится к объекту "UsrMagazineInOpp", поэтому, если Вы ставите точку останова после проверки результата запроса, она не сработает, так как условие response.success будет false. К тому же, у "UsrMagazineInOpp" нет колонки "PrimaryAmount".

И кстати, почему бы Вам до 7.2 не обновиться? Есть же пакет перехода.

"Андрей Каспаревич" написал:Здравтсвуйте, Акмаль!
Обнаружил, что у нас есть бэкап этой БД. Проверил - подписка на изменение детали работает, но у Вас есть еще ошибка в changeDetailSubscribeByName. Этот методы выполняется в контексте страницы "UsrOpportunity1Page", таким образом
this.get('Id')

вернет Id продажи, а запрос строится к объекту "UsrMagazineInOpp", поэтому, если Вы ставите точку останова после проверки результата запроса, она не сработает, так как условие response.success будет false. К тому же, у "UsrMagazineInOpp" нет колонки "PrimaryAmount".

Андрей, код внутри changeDetailSubscribeByName стоял тестовый. И даже если сделать так:

			this.methods.init = function() {
				var typeValue = {displayValue: 'Продажа подписки', value: '2A5A7645-59E6-DF11-971B-001D60E938C6'};
				this.set('Type', typeValue);
				this.changeDetailSubscribeByName('magazineInOpp', function() {
					 var a = 'aaa';
				});
				//this.set('UsrCount', 10);
			};

управление не приходит в changeDetailSubscribeByName после добавления записи на деталь.

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

Вопрос решился добавлением

this.sandbox.publish('DetailChanged', [this.sandbox.id, null]);

после кастомного добавления записи.

Показать все комментарии
Технические вопросы
5.x

Добрый день.
Подскажите как на BPMOnline Realty 5 в разделе вывести иконку действия?
В разделе нет режима настройки.

Нравится

5 комментариев

Здравствуйте!

Если я правильно понял вопрос, необходимо дать пользователю доступ на операцию "Работа с приложением в режиме настройки". Для этого необходимо перейти в Инструменты-Доступ к операциям.

Нет, не правильно меня поняли.
Доступ на операцию "Работа с приложением в режиме настройки" у меня есть.
Мне нужно в разделе Единое окно добавить кнопку Действия(со списком действий) для одной из частей этого окна.

Здравствуйте, Антонина.

В едином окне расположены контейнеры со страницами. Схему нужной страницы можно найти в разделе Конфигурация и немного изменить. Например, стандартная страница в Едином окне - Страница реестра Активностей в Едином окне менеджера. Для того, чтобы отобразить кнопку действий, необходимо открыть процесс страницы, добавить пул, дорожу и событийный подпроцесс. В подпроцесс добавить начальное событие Init, промежуточное генерирующее Init с отправкой в родительский процесс и задание-сценарий. В задании необходимо обратиться к специальному свойству элемента управления страницы:

Page.ActionButton.Hidden = false;

Кнопку Действия вывести получается. Не получается вывести список действий при нажатии на эту кнопку.

Здравствуйте, Антонина!
В принципе, действия можно добавить в дизайнере страницы реестра следующим образом:

А затем добавить обработчик выбора действия:

Показать все комментарии
5.x
service
условие
условный поток
Технические вопросы

Здравствуйте,

помогите, пожалуйста со следующим вопросом:
есть кастомное поле (справочник(шаблон инцидента) в инциденте). делаю дополнительный БП который обрабатывает изменение этого поля. Читаем данные инцидента ReadDataUserTask1. Далее требуется через Исключающее ИЛИ расписать дальнейшие варианты действий условными потоками. Вот пример попытки написать условие одного из потоков:

ReadDataUserTask1.ResultEntity.GetTypedColumnValue("TemplateOfIncident.Id") == (Guid)Terrasoft.Core.Configuration.SysSettings.GetValue(UserConnection, "StandartIncidentTemplate”)

системную настройку значений полей справочника (например StandartIncidentTemplate) я сделал..

при публикации имеем ошибки типа "символ новой строки в константе", "Ожидался класс, делегат, перечисление, интерфейс или структура" и "ожидалось перечисление типа или пространства имен либо признак конца файла"

понимаю, что нужно указать тип имени TemplateOfIncident.Id(возможно неявного), но как это сделать не знаю.

если в качестве теста использовать стандартное поле и справочник (Сервис) то условие:
ReadDataUserTask1.ResultEntity.GetTypedColumnValue("ServiceId") == (Guid)Terrasoft.Core.Configuration.SysSettings.GetValue(UserConnection, "EquipmentReplacementService”)
работает при использовани в Usings - Terrasoft.Configuration

Нравится

1 комментарий

обходное решение нашлось необчным образом - взял guid поля справочника из таблицы и вставил его в условие:

ReadDataUserTask1.ResultEntity.GetTypedColumnValue("TemplateOfIncidentId") == new Guid("E7496BD4-855C-45E1-AA07-B286CFCD55A7")

подозреваю, что лучше в стороннем скрипте (сразу после старта процесса) объявить переменную, сравнивать со значениями и в условии обращаться уже к ней.

Показать все комментарии
Cargo_5.4.1.790
Технические вопросы
5.x

Здравствуйте! При открытии карточки Лида запускается бизнес-процесс, в который я передаю Id выбранного Лида, в ходе бизнес-процесса возможно ли в открытую карточку записывать новые значения Статуса Лида, при этом не закрывая и заново не открывая карточку, и как это реализовать??

Нравится

3 комментария

Здравствуйте, Виктория.

А как Вы реализовали запуск БП по открытию карточки?
Работать с карточкой не закрывая ее можно в процессе самой карточки. Опишите бизнес-задачу, которая перед Вами стоит.

Так написано в ТЗ: Если в Разделе Лиды поле Статус = Холодный звонок при открытии карточки записи запускать бизнес-процесс.

Получается, что и карточка открывается и бизнес-процесс запускается и в ходе этого бизнес-процесса меняется значение поля статус и мне его надо отображать в открытой карточке. а бизнес-процесс я запускаю в LeadEditPage на событии PageLoadComplete.

такое возможно?

Я не аналитик, конечно, но мне постановка кажется не очень грамотной.
А если карточка была открыта, процесс запустился а карточка закрыта без изменений?
При повторном открытии запускать опять процесс?

Если статус лида необходимо поменять после запуска процесса и он вссегда будет меняться на определенный, то можно там же в PageLoadComplete устанавливать значение.
Если смена статуса должна происходить на значение, которое будет известно по ходу выполнения процесса, тогда можно в качестве параметра БП передать контекст (он доступен в скрипте PageLoadComplete в переменной context). В самом БП производить вычисление и отправлять определенное сообщение в процесс страницы (по имеющемуся контексту). Для статуса 1, сообщение message1, для 2 - message2 и т.п.
В странице лида необходимо будет добавить подпроцессы с начальным сообщением и заданием, в которых будет логика установки нужного значения статуса.

Отправить сообщение из кода можно так:

ThrowEvent(context, "message1");
Показать все комментарии
Активность
Технические вопросы
7.x

Здравствуйте!

BPM 7.2.0.1223
Есть пользовательский раздел Запросы.
На странице активности в групу 'Связи' добавлено поле Запрос.

Activity page

Как связать активность в рамках Бизнес Процесса с запросом?

Activity page in process

Нравится

5 комментариев

Здравствуйте, Тарас.

Эта страница (страница элемента бизнес-процесса) описана и определена в одном из базовых пакетов, поэтому изменить ее не удастся.
Теоретически, Вы можете создать собственное действие и страницу для него на основании уже существующей и использовать ее.
Чтобы посмотреть, как реализованы стандартное действие и страница, посмотрите схемы:

Максим, добрый день! Спасибо за ответ!
У меня поставлена следудующая задача:
в системе создан новый объект, по которому отрабатвыает бизнес-процесс. В рамках БП я создаю активность при изменении которой я открываю карточку записи данного объекта. Можно ли связать активность с объектом в рамках БП другим способом (чтоб в дальнейшем я смог раздать права доступа на саму активность)?

Можно дополнительно использовать элемент Изменение данных и там прописывать связь между объектами.
То есть сначала создаете задачу, а после в Изменении заполняете этой задаче поле Запрос.

"Салихов А" написал:

Можно дополнительно использовать элемент Изменение данных и там прописывать связь между объектами.

То есть сначала создаете задачу, а после в Изменении заполняете этой задаче поле Запрос.

Skype - akmal.salihov


Спасибо за ответ, но Ваш вариант сработает только после завершения активности (Выполнена или Отменена).

"Taras Datsenko" написал:

Спасибо за ответ, но Ваш вариант сработает только после завершения активности (Выполнена или Отменена).


Нет, если для создания задачи использовать элемент Добавить данные, потом, для связки объектов, изменить данные, а уже потом Открыть страницу редактирования.

Показать все комментарии