|
Внешние обработки и безопасный режим | ☑ | ||
---|---|---|---|---|
0
Terras
10.08.20
✎
21:11
|
Добрый вечер всем!
Дано: внешняя обработка которая загружает данные из EXCEL. соответственно передает данные с клиента на сервер. &НаКлиенте Процедура Прочитать(Команда) Расширение = ПолучитьРасширениеФайла(ИмяФайла); АдресХранилища = ""; ПоместитьФайл(АдресХранилища, ИмяФайла,, Ложь, УникальныйИдентификатор); ПрочитатьНаСервере(АдресХранилища, Расширение); КонецПроцедуры &НаСервере Процедура ПрочитатьНаСервере(АдресХранилища, расширение) ВремФайл = ПолучитьИмяВременногоФайла(Расширение); ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресХранилища); ДвоичныеДанные.Записать(ВремФайл); //какой то код КонецПроцедуры Обработка затыкается на процедуре "ПрочитатьНаСервере" у пользователя с ограниченными правами с ошибкой "У пользователя недостаточно прав для операций с базой данных". Мои личные подозрения что затыкается на моменте ДвоичныеДанные.Записать(ВремФайл); Но отладить никак, т.к. при интерактивном открытии через файл ругается на безопасный режим. Видимо он у ограниченных пользователей по умолчанию как то устанавливается теперь. Когда пытаюсь отключить его В сведениях о внешней обработке в параметрах регистрации стоит безопасныйРежим = Ложь; Разрешения на привилегированный режим выданы. В связи со всем выше сказанным, у меня несколько вопросов: 1. Как отключить безопасный режим под неполными правами при открытии обработки из файла? 2. Как сделать так, чтобы заработала подключенная внешняя обработка под пользователем с неполными правами? Всем заранее спасибо за ответы! |
|||
1
Terras
10.08.20
✎
21:17
|
в сведениях о внешней обработке вот что:
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке(СтандартныеПодсистемыСервер.ВерсияБиблиотеки()); ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка(); ПараметрыРегистрации.Версия = "1.0"; ПараметрыРегистрации.БезопасныйРежим = Ложь; ПараметрыРегистрации.Наименование = ЭтотОбъект.Метаданные().Представление(); ПараметрыРегистрации.Информация = ЭтотОбъект.Метаданные().Комментарий; ПараметрыРегистрации.Назначение.Добавить("Подсистема.Зарплата"); ПараметрыРегистрации.Вставить("ВерсияБСП", "2.2.2.2"); ПараметрыРегистрации.Вставить("РежимСовместимостиРазрешений", Перечисления.РежимыСовместимостиРазрешенийДополнительныхОтчетовИОбработок.Версия_2_2_2); НоваяКоманда = ПараметрыРегистрации.Команды.Добавить(); //НоваяКоманда.Представление = ЭтотОбъект.Метаданные().Синоним; НоваяКоманда.Представление = НСтр("ru = 'НазваниеОбработки'"); НоваяКоманда.Идентификатор = "МояОбработка"; НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы(); НоваяКоманда.ПоказыватьОповещение = Истина; ПараметрыРегистрации.Разрешения.Добавить( РаботаВБезопасномРежиме.РазрешениеНаИспользованиеПривилегированногоРежима( НСтр("ru = 'На всякий случай требуется установка привилегированного режима.'"))); Возврат ПараметрыРегистрации; КонецФункции |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |