addOnStageChange () вызывается дважды - PullRequest
0 голосов
/ 24 сентября 2018

Я написал обработчик событий при смене этапа в BPF в Opportunity Entity:

var checkForAccountApproved = function (executionContext) {
    var formContext = executionContext.getFormContext();
   formContext.data.process.addOnStageChange(function (stageContext) {

        var stageName = stageContext.getEventArgs().getStage().getName().toString();
        if (some conditions) {
            formContext.data.process.movePrevious();

        }
        else {
            currentActiveStage.setValue(stageName);
            formContext.data.entity.save();
        }

    });
};

По сути, при нажатии кнопки «Далее» мне нужно проверить, не удовлетворены ли некоторые условия, только затем следующееступень должна быть активной, в противном случае текущая ступень должна быть активной.

Если условия не выполняются, т.е. происходит смена ступени, я сохраню значение текущей активной ступени в поле.Если я явно вызываю save, обработчик события снова запускается.

Почему это так?

...