Добрый день.
Запускаю БП из действия раздела:
var selectedRows = this.get("SelectedRows");
var accounts = selectedRows.join();
var processName = "UsrChangeAccountOwnerProcess";
var params = {
AccountIds: accounts
};
ProcessModuleUtilities.runProcess(processName, params);
При запуске БП по выделенным записям (более 50 записей) возвращается ошибка:
https://yadi.sk/i/k7KXj5VE3PTDoj
Предположительно ошибка связана с длиной строки с идентификаторами выделенных записей, которая передаётся в параметр процесса. Т.к. если выделено до 50 записей, то БП запускается.
Вопросы:
Как снять ограничение на длину параметра?
Можно ли запустить БП с использованием callService, передав параметры в виде jsonData, а не в url?
Нравится
Добрый день. Передать параметры в виде JSON строки, к сожалению, не выйдет. Вам стоит смотреть в сторону передачи фильтров, по которым можно будет выбрать данные записи. Пример можно глянуть в реализации мультиделита. Серверный код дисериализации находится в GridUtilitiesService DeleteRecordsAsync.
Терещук Сергей,
А с чем связана описанная мной проблема?
Коновалов Игорь,
Я думаю, что это вызвано ограничениями, которые прописаны для WCF сервиса, который вызывается. В частности,
maxReceivedMessageSize. Но я могу и ошибаться.