Регистрация

Недостаточно прав на методе AddMainFile

Вопросы, связанные с разработкой дополнительных справочников, карточек и т.п. на базе DocsVision

Модератор: Модераторы форума

Любитель
Сообщения: 35
Зарегистрирован: 23 окт 2014, 08:47

Недостаточно прав на методе AddMainFile

Сообщение kozzzq » 27 июл 2016, 00:58

Добрый вечер!
Столкнулся со странной проблемой...
На DV5.4 имеется кастомная карточка документа, построенная на основе стандартной карточки "Документ".
В нее необходимо из кода крепить файлы. Пробежавшись по гуглу и мануалам, понял что самый верный и актуальный способ - сервис IDocumentService и методы AddMainFile, AddAdditionalFile.
В общем делаю так:
Код: Выделить всё
IDocumentService DS= Context.GetService<IDocumentService>();
DS.AddMainFile(MyDoc, FilePath);

При выполнении метода AddMainFile выскакивает exception - <Недостаточно прав для выполнения операции "добавление основного файла">. Код вызывается из приложения WinForms. Все запускается от одной учетки администратора (и StorageServer, и SqlServer и само приложение). Причем этот эксепшен выскакивает при выполнении всех четырех методов на добавление файла (AddMainFile(path), AddMainFiles(paths[]), AddAdditionalFile(path), AddAdditionalFiles(path[])). Еще более интересная ситуация - метод отработал один раз, файлы добавились в карточку и все.... Далее ошибки. Экземпляр объекта MyDoc точно рабочий, с ним еще много действий по коду. Путь к файлу и сам файл тоже корректные.
В чем подвох? Пробовал создавать VersionFileCard и вместо пути добавлять его (в методе есть такой вариант), таже ошибка....

Заранее благодарен!

Любитель
Сообщения: 29
Зарегистрирован: 28 дек 2012, 06:20

Re: Недостаточно прав на методе AddMainFile

Сообщение chudkko » 27 июл 2016, 04:59

Документ готовый или создается кодом?
Если запустить навигатор под этим пользователем, то файлы добавляются?

Опытный
Сообщения: 144
Зарегистрирован: 27 авг 2009, 08:43
Откуда: Ангарск

Re: Недостаточно прав на методе AddMainFile

Сообщение Finist » 27 июл 2016, 05:15

Используйте метод AttachMainFile(). Я ХЗ зачем у них два метода добавляющих файл в карточку в сервисе IDocumentService, но у меня получилось файл добавить только через AttachMainFile(). AddMainFile тоже выдавал ошибку все время

Любитель
Сообщения: 35
Зарегистрирован: 23 окт 2014, 08:47

Re: Недостаточно прав на методе AddMainFile

Сообщение kozzzq » 27 июл 2016, 10:13

Спасибо всем за ответы!
Карточку создаю кодом.
AttachMainFile() также выдает exception, только без текста, а просто <добавление основного файла> и все :D

Но с проблемой таки разобрался. Глупая невнимательность... :oops: У меня функция сохранения:
Код: Выделить всё
Context.AcceptChanges();

выполняется только лишь в самом конце кода создания карточки, т.е. я пытался добавить файл в еще несуществующую карточку!!! :lol:
Просто перенес AcceptChanges перед добавлением файла и все.

Вернуться в Разработка на платформе Docsvision

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1