Ошибка в дизайнере БП

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

Отладив, нашел где эта ошибка возникает, но не пойму причины.

//-----------------------------------------------------------------------------
// wnd_WorkflowDiagramActionsParametersScript
//-----------------------------------------------------------------------------

function DoActionChange(Dataset) {
        var ActionParametersDataset = dlActionParameters.Dataset;
        ActionParametersDataset.open();
strong>        ActionParametersDataset.Attributes('CurrentActionItemID') =
                        Dataset.ValAsStr('ID'); strong> /// Этой строке
        RefreshDataset(ActionParametersDataset);
        UpdateControls(ActionParametersDataset);
}

Сервисы БП не правил, раньше работало. Единственное что изменилось, это версии бинарников но не думаю что это могло повлиять.

Нравится

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

Иван, уточните, пожалуйста, версию (т.к. в 3.3.2 и версиях выше нет функции DoActionChange).
Если логика доработанная - вложите тестовый БП, на котором можно воспроизвести ошибку + доработанные сервисы.

"Бондарь Наталия" написал:Иван, уточните, пожалуйста, версию (т.к. в 3.3.2 и версиях выше нет функции DoActionChange).

Версия 3.3.1, и сервисы относящиеся к БП не дорабатывались

Иван, для устранения ошибки замените функцию RefreshActionsList сервиса wnd_WorkflowParametersLinkScript на:

function RefreshActionsList() {
                var ActionsListDataset = 
                               wndActionParameters.Window.ComponentsByName('dlActions').Dataset;
                ActionsListDataset.DisableEvents();       
                ActionsListDataset.Close();
                ActionsListDataset.Open();
                ActionsListDataset.EnableEvents();
}

после этих изменений в окне связей параметров - > элементы диаграммы не выводяться добавленные элементы((

Иван, Вы правы, не увидела.
Для решения вопроса измените функцию dlActionsOnDatasetAfterPositionChange сервиса wnd_WorkflowDiagramActionsParametersScript таким образом:

function dlActionsOnDatasetAfterPositionChange(Dataset) {
	    if (Dataset.State == dstInactive) {
            return;
        }
        DoActionChange(Dataset);    
}

Предыдущие изменения необходимо убрать.

Спасибо помогло=)

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