Техническое описание новой архитектуры bpm7 существует?

Добрый день

Смотрел форум наткнулся на запись, что события куда то делись по сравнению с 5.4. Отсюда вопрос какой теперь подход к разработке, архитектура и тп?
В частности как к какому то событию интерфейса вызвать действие на c#?

Нравится

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

Антон, SDK по BPMonline 7.0 в процессе написания.
Событий интерфейса уже нет, для задания логики используется класс бизнес правил, прописанных на java script.
Пример:

{
    /* Настрока поля */
    type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE,
    name: 'Potential',
    columnPath: 'Potential',
    dataValueType: Terrasoft.DataValueType.FLOAT,
    visible: true,
    enabled: false,
 
    /* Настройка зависимости */
    //Перечисление полей по изменению которых должен запускаться метод
    dependencies: ['Revenue', 'Probability'],
    //Название метода
    methodName: 'OpportunityPotentialGenerate'
}
......
//Реализация указанного выше метода
this.methods['OpportunityPotentialGenerate'] = function() {
    var revenue = this.get('Revenue');
    var probability = this.get('Probability');
    if (Ext.isEmpty(probability) || Ext.isEmpty(revenue)) {
        return;
    }
    var select = Ext.create('Terrasoft.EntitySchemaQuery', {
        rootSchemaName: 'OpportunityProbability'
    });
    select.addColumn('Id'); // ToDo: Удалить строчку когда пофиксят
    select.addColumn('Value');
    select.getEntity(probability.value, function(result) {
        var entity = result.entity;
        if (entity) {
            var potential = ((revenue * entity.get('Value')) / 100);
            this.set('Potential', potential);
        }
    }, this);
}

А для правил при загрузки лучше посмотреть эту тему

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