Добавление новой детали BPM 7.3

Здравствуйте. Пытаюсь добавить новую деталь в раздел Контакты на вкладку история.
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"}
 
                                                                              }
                                                               },

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

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

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