При использовании Salesforce Partner API (версия 21.0), как я могу определить, может ли текущий пользователь / сеанс создать новую версию контента ?
Использование descriptionGlobal () Я могу подтвердить, что ContentVersion и ContentDocument доступны как объекты для текущей организации.
Использование descriptionSObject () Я могу подтвердить, что текущий сеанс пользователя помечает ContentVersion как создаваемый.
Я также подтвердил, что поля, которые я задаю при вставке записи ContentVersion, помечены как создаваемые (PathOnClient, VersionData и FirstPublishedLocationId).
В моих тестовых случаях, если у пользователя есть доступ к области контента через веб-интерфейс Salesforce, тогда тестовый пример проходит с созданием ContentVersion.
Однако, когда я пытаюсь использовать тот же код из редакции разработчика (без доступа к области контента), он падает с сообщением:
FIELD_INTEGRITY_EXCEPTION - Пользователь не имеет доступа к контенту Salesforce. Неверное значение поля :: Источник происхождения
Создаваемые метаданные Partner API для ContentVersion и поля, указывающие, что это должно сработать.
Я работаю в C #, но код Java в рецепте Публикация документов в Personal Workspace Salesforce CRM Content делает то же самое без проверок метаданных, которые можно создавать.
Чтобы попытаться исключить мой код как причину проблемы, я подтвердил, что ContentVersion должен создаваться с помощью Force.com Explorer:
![Force.com Explorer showing attributes for ContentVersion](https://i.stack.imgur.com/amnA2.png)