Вопрос

Как передать несколько уникальных идентификаторов записей в параметр?

Итак, в очередной раз рубрика "научите, пожалуйста" :)

На академии есть статья, где описано как создать кнопку в разделе и по клику на нее запустить бизнес-процесс, передав в него уникальный идентификатор записи и обработать эту запись нужным образом, в этом мне на помощь приходит this.get("ActiveRow");

И вот вопрос - Как мне передать в бизнес-процесс массив уникальных идентификаторов записей? Я нашел на академии как правильно взять выбранные записи с помощью this.get("SelectedRows");

Можно конечно попробовать запустить процесс по циклу для каждой записи, но хотелось бы понять можно ли передать массив значений в БП и там их все обработать?

Изображение удалено.

 

 

 

 

Нравится

8 комментариев
Лучший ответ

Можно попробовать склеить массив через запятую, кинуть как строку, принять строку в бп, split на C#

Можно попробовать склеить массив через запятую, кинуть как строку, принять строку в бп, split на C#

Можете в БП создать параметр "Коллекция значений" и в него уже передавать коллекцию из раздела при вызове БП

Варфоломеев Данила,

Так и сделали, спасибо. А подскажите, пожалуйста, еще такую вещь.

Пользователь выбирает несколько записей, запускает по ним процесс. А в своем методе я в конце делаю this.reloadGridData(); - галочки отмеченных записей сбрасываются, но остается режим выбора нескольких записей. Как его отменить в моем методе?

this.unSetMultiSelect

Варфоломеев Данила,

Спасибо. А я еще заметил, когда кликаешь на Действия > Выбрать все, то у меня в массив попадает всего 30 записей. А как выбрать все отфильтрованные, если их больше 30-ти?

Скорее всего вам нужно найти атрибут секции, который отвечает за этот режим.

Если быть точнее атрибут называется MultiSelect, передайте в него false и множественный выбор уйдёт.

Кисловский Михаил Андреевич,

Так Данила выше уже подсказал метод this.unSetMultiSelect()

Спасибо.

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