20.08.2018, 00:34 | #1 |
Участник
|
Plugin Delete
Доброй ночи.
Есть плагин который перед удалением должен выполнить фетч, найти записи и дальше по логике. Все работает в режиме дбага ( через PuginRT ), но когда заливаю рабочую версию работать корректно не хочет. Проблема заключается в том что при выполнении запроса постоянно возвращается 0 записей, в этот же момент если в ошибку прокинуть фетч и его выполнить записи есть. UserID совпадает с текущим юзером ( т.е. сис админом). Ниже скрины. |
|
20.08.2018, 09:13 | #2 |
Участник
|
Вероятнее всего проблема все таки в правах пользователя.
Попробуйте в коде заменить X++: context.InitiatingUserId X++: context.UserId |
|
20.08.2018, 09:47 | #3 |
Участник
|
Цитата:
Сейчас вот начал тестировать с простого фетча. Обычный запрос на получения топ 10 "new_conference" вернул 10 записей, только добавляю условия по link-enity сразу возвращает 0 записей. Но при этом если выполнить fetch с link-enity в ToolBox`e то возвращает реальные данные. |
|
20.08.2018, 10:22 | #4 |
Участник
|
Вы уверены, что у вас пользователь с админскими правами? Как то больше похоже что у него просто нет прав на связанную запись.
|
|
20.08.2018, 10:43 | #5 |
Участник
|
Да точно)
Вот строчка с прокинутой ошибки: UserId d3c4e298-92bf-4fb3-8368-7681bb963201 --- Ид юзера с ролью системного админа InitiatingUserId: d88f1984-796e-e811-a984-000d3a1a7fa7 --- Ид моего юзера Может эта информация необходима, это 365 CRM online. Буду очень благодарен за помощь, 2 дня голову ломаю что не так. 2 плагина на Associate i Dissociate работают отлично, и проблем вообще нет. Последний раз редактировалось Otti; 20.08.2018 в 11:06. |
|
20.08.2018, 11:12 | #6 |
Участник
|
UserId - это пользователь, который указан при регистрации шага плагина в поле Run in User's Context.
InitiatingUserId - это пользователь, инициировавший запуск плагина. Если в плагине вы используете context.UserId, значит вам нужно убедиться, что в регистраторе в настройках шага у вас стоит не Calling User, а указан пользователь с админскими правами. Если в плагине вы используете context.InitiatingUserId , то нужно убедиться, что у пользователя, от имени которого вы тестируете есть права на все записи, из которых собран ваш FetchXML. |
|
20.08.2018, 13:37 | #7 |
Участник
|
Цитата:
Сообщение от ZooY
UserId - это пользователь, который указан при регистрации шага плагина в поле Run in User's Context.
InitiatingUserId - это пользователь, инициировавший запуск плагина. Если в плагине вы используете context.UserId, значит вам нужно убедиться, что в регистраторе в настройках шага у вас стоит не Calling User, а указан пользователь с админскими правами. Если в плагине вы используете context.InitiatingUserId , то нужно убедиться, что у пользователя, от имени которого вы тестируете есть права на все записи, из которых собран ваш FetchXML. |
|
20.08.2018, 16:55 | #8 |
Чайный пьяница
|
Попробуйте инстанцировать сервис следующим кодом:
Код: var service = serviceFactory.CreateOrganizationService(null);
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|