Ошибка при вызове метода контекста создать нарушение прав доступа

Нарушение прав доступа

Я
   Абырвалг

07.12.10 — 16:44

Обработки.ПечатьПрайсЛиста.ПолучитьФорму(«ФормаЗаполнения»);

Ошибка при вызове метода контекста (ПолучитьФорму): Нарушение прав доступа

Что бы это значило? У пользователя права на обработку есть.

   Dem1urg

1 — 07.12.10 — 17:02

Может при создании формы инициализируются какие-то переменные или есть реквизиты обработки к которым у пользователя нет прав доступа.

   mikecool

2 — 07.12.10 — 17:04

(0) иди в отладчик — увидишь на чем стопорится

   Абырвалг

3 — 07.12.10 — 17:05

(1) вот непонятно
(2) в отладчике куда идти? модуль обработки не вызывается при получитьформу.

   zladenuw

4 — 07.12.10 — 17:06

а может все таки вызывается ?

   mikecool

5 — 07.12.10 — 17:06

(3) отладка — останавливаться по ошибке
попробуй

   Генератор

6 — 07.12.10 — 17:06

оба права есть или только использование?

   Живой Ископаемый

7 — 07.12.10 — 17:07

2(3) Настрой ТЖ

   Абырвалг

8 — 07.12.10 — 17:08

(6) оба

по-видимому нет прав к какому-то элементу на форме обработки, но вроде проверил все

   Генератор

9 — 07.12.10 — 17:09

в конце модуля формы есть какой код?

   Абырвалг

10 — 07.12.10 — 17:12

(9) нет

   Абырвалг

11 — 07.12.10 — 17:13

удалил все элементы формы, закомментировал весь код. ошибка осталась :)

   YF

12 — 07.12.10 — 17:14

(11) основной реквизит?

   Абырвалг

13 — 07.12.10 — 17:14

(12) таже обработка ОбработкаОбъект.ПечатьПрайсЛиста

   Живой Ископаемый

14 — 07.12.10 — 17:14

2(11)http://www.screencast.com/users/october.hammer/folders/Jing/media/2826f817-61f1-47be-a208-0d4c9efbef2d

   mikecool

15 — 07.12.10 — 17:18

смотри в ЖР, 8.2 уже логирует ошибки доступа

   Абырвалг

16 — 07.12.10 — 17:19

(14) Привет, Андрюх :)
У меня 8.1. ЖР оставлю на крайний случай, нет времени разбираться

   Живой Ископаемый

17 — 07.12.10 — 17:20

это не ЖР, а ТЖ.
Привет… :)

в примере 8.2 потому что на ИТС лежит обработка которая написана на управляемых формах.. Можно поставить себе платформу локально 8.2 создать пустую файловую базу и зайти в нее через управляемое приложение.

   Абырвалг

18 — 07.12.10 — 17:21

Короче в реквизитах обработки был такой: ОбщийОтчет (ОтчетОбъект.ОтчетСписокКроссТаблица). Вот к нему и не было доступа.

   Dem1urg

19 — 07.12.10 — 17:38

Собственно о чем в (1) и было сказано ;)

  

Абырвалг

20 — 07.12.10 — 17:40

(19) :)

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Alex Dji

Дата регистрации: 26.01.2018
Сообщений: 1

Добрый день, после обновления конфигурации слетел доступ к внешним отчетам у ряда пользователей, хотя галочка в роли стоит верная. Сообщение с ошибкой «{Обработка.ВнешниеМодули.МодульОбъекта(36 8) }: Ошибка при вызове метода контекста (Создать)
       МодульОбработки = Обработки[ИмяФайлаОбработки].Создать();
по причине:
Нарушение прав доступа!

«
снова добавить и удалить права роли не принесло успеха. Подскажите пожалуйста, есть ли какие варианты?

Показывать по
10
20
40
сообщений

Ошибка в 1С 8.3 Нарушение прав доступа появляется при попытках обращения пользователя к объекту, прав на который у него нет. Очень часто это происходит при вводе нового пользователя в 1С, доработке программного кода и обновлении программы.

Прочитав эту статью, вы:

  • узнаете, на что обращать внимание при возникновении ошибки;
  • получите рекомендации по ее устранению;
  • ознакомитесь с ответами экспертов БухЭксперт8 на вопросы, связанные с возникновением ошибки.

Содержание

  • Причины ошибки
    • Ошибка обновления
    • Нарушение прав доступа при чтении данных
    • Нарушение прав доступа при записи данных
    • Работа с внешними отчетами и обработками
    • Добавление нового пользователя
  • Ответы на вопросы
    • Ошибка при проведении документа Реализация (акт, накладная)
    • Ошибка при попытке открыть карточку контрагента под определенным пользователем
    • Ошибка при открытии внешнего отчета

Нарушение прав доступа 1С 8.3 внешняя обработка СКАЧАТЬ >>

Причины ошибки

С ошибкой Нарушение прав доступа сталкиваются многие пользователи 1С после доработки программного кода и обновления программы. Возможные причины появления ошибки:

  • обновление программы на новый релиз;
  • попытка чтения или записи данных справочника, документа или регистра пользователем, не имеющим прав на объект;
  • использование внешних обработок и отчетов без установки пользователю специальной роли;
  • ошибка задания прав новому пользователю 1C.

Ошибка обновления

При обновлении программы текущая конфигурация 1С заменяется новой версией, в которой содержатся выполненные разработчиками доработки. Все изменения, внесенные перед публикацией нового релиза, тестируются, но время от времени ошибки все-таки случаются. Если это произошло, ошибки регистрируются в специальном реестре 1С и исправляются в последующих релизах.

При появлении ошибки Нарушение прав доступа после обновления программы нужно выполнить следующие действия:

  1. Проверьте, содержится ли ошибка в реестре: Публикация ошибок 1С.
    Перейдите по ссылке, в форме поиска ошибок укажите конфигурацию программы и текст ошибки.После нажатия кнопки Найти будет произведен поиск по заданным параметрам.
  2. Для зарегистрированной ошибки обратитe внимание на дату регистрации и релиз исправления ошибки.
  3. Если заполнена информация в разделе Способ обхода — внимательно ее изучите: это позволит сразу решить проблему, не дожидаясь релиза с исправлениями.
  4. Обратитесь на горячую линию 1С, если ошибка в реестре еще не зарегистрирована:
    • телефон hotlane 1С: (495) 956-11-81;
    • E-mail:v8@1c.ru.

Восстановите программу из копии и ждите исправления ошибки в следующем релизе обновления.

БухЭксперт8 советует всегда делать перед обновлением архивные копии базы данных. Это поможет восстановить базу при неудачном обновлении.

Нарушение прав доступа при чтении данных

В 1С существует набор специальных объектов Роль, которые описывают разрешенные действия пользователей. Роли задаются разработчиками в Конфигураторе 1С. При работе в 1С можно пользоваться только этим предопределенным набором. Самостоятельно ввести новую Роль без доработки Конфигурации невозможно.

Каждая Роль включает набор свойств для работы с объектами 1С. Они задают права на чтение, просмотр, изменение, редактирование и т. д. данных в справочниках, документах и регистрах программы.

У роли Чтение контрагентов установлено свойство Чтения на:

Пользователь, которому назначили роль Чтение контрагентов, может считывать данные справочника Контрагенты, но при обращении к справочнику Банки получит ошибку Нарушение прав доступа.

Нарушение прав доступа при записи данных

При записи изменений данных в справочниках, документах и регистрах программа проверяет наличие соответствующих прав у пользователя также, как и при чтении данных,

У роли Добавление и изменение сотрудников установлено свойство Изменение на:

Пользователь, которому назначена роль Добавление и изменение сотрудников, может редактировать данные справочника Сотрудники, но при попытке изменения данных банка получит ошибку Нарушение прав доступа.

Работа с внешними отчетами и обработками

Для работы с внешними отчетами и обработками пользователю нужно назначить одну из ролей:

  • Полные права;
  • Интерактивное открытие внешних отчетов и обработок.

Как добавить роль Интерактивное открытие внешних отчетов и обработок, описано в статье Как добавить пользователю с правами Бухгалтер права запускать внешние отчеты и обработки?

Пользователь Бухгалтер при открытии файла внешней обработки: кнопка Главное меню — Файл — Открыть — файл Нарушение прав доступа получает ошибку:

  • Нарушение прав доступа.

Для исправления ситуации нужно добавить роль Интерактивное открытие внешних отчетов и обработок пользователю, работающему с внешней обработкой.

Добавление нового пользователя

При добавлении новых пользователей БухЭксперт8 рекомендует использовать типовые Профили группы доступа в 1С: раздел Администрирование — Настройки программы — Настройки пользователей и прав.

В 1С заложена автоматическая проверка прав того набора объектов 1С, который определяется профилем групп доступа:

  • Администратор;
  • Главный бухгалтер;
  • Бухгалтер;
  • Только чтение;
  • и т. д.

Программа скроет все объекты, на которые у пользователя нет прав:

Чтобы ограничить возможность изменения документов определенным пользователям, можно даже не устанавливать специально Дату запрета изменения. Программа сама не даст сохранить изменения пользователям с ограниченными правами:

Использование типовых Профилей групп доступа сводит к минимуму риск возникновения ошибки.

Ответы на вопросы

Ошибка при проведении документа Реализация (акт, накладная)

Создали новую роль в Конфигураторе — только для документа Реализация (акт, накладная). При записи документа программа отрабатывает правильно, а при проведении — выдает ошибку Нарушение прав доступа.

В чем может быть причина?

При записи документа должно быть установлено право изменения этого документа у пользователя. Но при проведении документа помимо него самого задействуются и другие объекты — создаются записи в различные регистры.

Если вы указали в новой роли право только на документ Реализация (акт, накладная), этого недостаточно. По кнопке Дт/Кт уточните, какие регистры используются при проведении документа и добавьте их в новую роль с активными свойствами:

  • Чтение;
  • Изменение;
  • Просмотр;
  • Редактирование.

Ошибка при попытке открыть карточку контрагента под определенным пользователем

При попытке открыть карточку Контрагента под определенным пользователем появляется ошибка Нарушение прав доступа. Если в окне ошибки нажать на кнопку Подробно, высветится информация:

  • «Справочник.Контрагенты.Форма.БП_ФормаЭлемента.Форма: Ошибка при вызове метода контекста НаборЗаписей.Прочитать() по причине: Нарушение прав доступа».

Что делать?

Ошибка связана с тем, что у пользователя, который отрывает карточку Контрагенты, нет прав на чтение данных из определенного регистра 1С.

Если в подробном описании ошибки программа не указывает регистр, при записи данных в который происходит ошибка, вам придется выяснить это самостоятельно. Для недоработанной типовой конфигурации Бухгалтерия 3.0 при открытии справочника Контрагенты могут использоваться:

  • регистр бухгалтерии Хозрасчетный;
  • регистр бухгалтерии Курсы валют;
  • регистр бухгалтерии Наличие дублей у контрагентов;
  • и т. д.

Эти регистры включены в программный модуль справочника Контрагенты.

Проверьте, что у пользователя есть права на эти регистры. Более серьезный анализ ситуации выполняется по программному коду процедуры открытия формы справочника.

Эта работа требует особой подготовки и квалификации.

Ошибка при открытии внешнего отчета

При попытке открыть внешний отчет 1С появляется ошибка Нарушение прав доступа. Все остальные отчеты внутри программы открываются нормально. В чем может быть причина?

Для открытия внешних отчетов и обработок 1С необходимо добавить пользователю роль Интерактивное открытие внешних отчетов и обработок. После этого он сможет работать с внешним отчетом без ошибок.

Подробнее Как добавить роль Интерактивное открытие внешних отчетов и обработок

См. также:

  • У пользователя недостаточно прав на исполнение операции
  • Конфигурация узла распределенной ИБ не соответствует ожидаемой
  • 1C Отчетность: не удалось расшифровать файл
  • Этот хост неизвестен 1С: как исправить
  • Ошибка при выполнении операции с информационной базой 1С 8.3

Если Вы еще не являетесь подписчиком системы БухЭксперт8:

Активировать демо-доступ бесплатно →

или

Оформить подписку на Рубрикатор →

После оформления подписки вам станут доступны все материалы по 1С Бухгалтерия, записи поддерживающих эфиров и вы сможете задавать любые вопросы по 1С.

Подписывайтесь на наши YouTube и Telegram чтобы не пропустить
важные изменения 1С и законодательства

Помогла статья?

Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно

Уже битый час ищу в инете подсказку к решению проблемы и не могу найти. Пожалуйста, помогите решить. Что имеем: 1С 8.2.14.519 (клиент-сервер) + MS SQL 2005 + УПП 1.3. Я создаю регламентное задание, через КонсольЗаданий вижу, что оно запускается, но выполняется с ошибкой. Вот текст процедуры Вот код ошибки {ОбщийМодуль.BILL.Модуль}: Ошибка при вызове метода контекста (СоздатьЭлемент) по причине: по причине: Нарушение прав доступа! Как настроить права доступа регламентного задания? Или если есть другой способ решения проблемы — подскажите.

под каким пользователем запускается задание? У него права есть?

это где ты такую ошибку видишь? или сервер в дебаг режиме находится?

Я не могу найти настройку, под каким пользователем запускать задание. Служба сервера работает от системной учетной записи

Что интересно, если поставить общему модулю галку «Привилегированный», то все работает.

Использование: Чтение и запись. Описание: Тип: Строка. Имя пользователя, под которым будет выполняться данное регламентное задание. Если имя пользователя не задано, регламентное задание будет выполняться пользователем по умолчанию, имеющим административные права. Чтения и запись для администратора. Доступность: Сервер, толстый клиент, внешнее соединение. Примечание: Возможность чтения и записи доступны только для администратора.

Так, вроде проясняется ситуация немного. Задам вопрос поточнее — можно ли задать в конфигураторе пользователя, или нужно прописывать в коде где-то? Это было бы логично, на мой взгляд.

В консоли заданий можно по-моему указать пользователя…

Спасибо. Все заработало. Я искал где задать пользователя в режиме конфигуратора, а оказалось нужно было рыть в сторону режима «Предприятие».

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

Добрый день, создал новую роль «Контр», поставил полные права на спр. Контрагенты, потом создал пользователя «Польз1», добавил ему роли: «Контр» и «Пользователь», но при открытии этим пользователем спр.Контрагенты, выходит такая ошибка:

{ОбщийМодуль.МодульПоискаВДанных(28)}: Ошибка при вызове метода контекста (Создать): Нарушение прав доступа!

по причине:

{ОбщийМодуль.МодульПоискаВДанных(28)}: Ошибка при вызове метода контекста (Создать): Нарушение прав доступа!

по причине:

Нарушение прав доступа!

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Alex Dji

Дата регистрации: 26.01.2018
Сообщений: 1

Добрый день, после обновления конфигурации слетел доступ к внешним отчетам у ряда пользователей, хотя галочка в роли стоит верная. Сообщение с ошибкой «{Обработка.ВнешниеМодули.МодульОбъекта(36 8) }: Ошибка при вызове метода контекста (Создать)
       МодульОбработки = Обработки[ИмяФайлаОбработки].Создать();
по причине:
Нарушение прав доступа!

«
снова добавить и удалить права роли не принесло успеха. Подскажите пожалуйста, есть ли какие варианты?

Показывать по
10
20
40
сообщений

Читают тему:

Уже битый час ищу в инете подсказку к решению проблемы и не могу найти. Пожалуйста, помогите решить. Что имеем: 1С 8.2.14.519 (клиент-сервер) + MS SQL 2005 + УПП 1.3. Я создаю регламентное задание, через КонсольЗаданий вижу, что оно запускается, но выполняется с ошибкой. Вот текст процедуры Вот код ошибки {ОбщийМодуль.BILL.Модуль}: Ошибка при вызове метода контекста (СоздатьЭлемент) по причине: по причине: Нарушение прав доступа! Как настроить права доступа регламентного задания? Или если есть другой способ решения проблемы — подскажите.

под каким пользователем запускается задание? У него права есть?

это где ты такую ошибку видишь? или сервер в дебаг режиме находится?

Я не могу найти настройку, под каким пользователем запускать задание. Служба сервера работает от системной учетной записи

Что интересно, если поставить общему модулю галку «Привилегированный», то все работает.

Использование: Чтение и запись. Описание: Тип: Строка. Имя пользователя, под которым будет выполняться данное регламентное задание. Если имя пользователя не задано, регламентное задание будет выполняться пользователем по умолчанию, имеющим административные права. Чтения и запись для администратора. Доступность: Сервер, толстый клиент, внешнее соединение. Примечание: Возможность чтения и записи доступны только для администратора.

Так, вроде проясняется ситуация немного. Задам вопрос поточнее — можно ли задать в конфигураторе пользователя, или нужно прописывать в коде где-то? Это было бы логично, на мой взгляд.

В консоли заданий можно по-моему указать пользователя…

Спасибо. Все заработало. Я искал где задать пользователя в режиме конфигуратора, а оказалось нужно было рыть в сторону режима «Предприятие».

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

Создаем роль с возможностью только чтения данных без возможности изменения чего-либо

  • пригодится для всех пользователей 1С, которые не являются операторами (бухгалтерами) — им нужны в основном отчеты
  • для аудиторов

Для начала поставим на всех объектах конфигурации право Просмотр (Чтение добавится автоматически) + Ввод по строке.
Ясно, что возникнут проблемы, т.к. на некоторые объекты нужно право записи.

При запуске от тестового пользователя с данной ролью появляется сообщение:

«У текущего пользователя нет доступных ролей для запуска информационной базы».

Основная проблема типовых конфигураций — в конфе предусмотрено как минимум две роли:

  1. с минимально необходимыми правами для работе в конфе — но для работы именно оператора (с правами создания документов и наполнения справочников)
  2. полные права

И поэтому любой пользователь типовой конфы должен по-любому иметь эту роль с минимальными правами оператора. Нам же нужны минимальные права для аудитора (без возможности внесения каких-либо изменений).

В общем модуле УправлениеПользователями отраслевой конфигурации «Подрядчик строительства 4 ред. 2.0» можно найти такую функцию

// Процедура проверяет возможность запуска ИБ с определенными для текущего
// пользователя доступными ролями
//
Процедура ПроверитьВозможностьРаботыПользователя(Отказ) Экспорт

 Если НЕ РольДоступна("ПолныеПрава") И НЕ РольДоступна("Бухгалтер") Тогда
  Отказ = Истина;
  #Если Клиент Тогда
  Предупреждение("У текущего пользователя нет доступных ролей, для запуска информационной базы.", 10, "Недостаточно прав доступа");
  #КонецЕсли
 КонецЕсли; 
 
КонецПроцедуры
 

Изменим логику с учетом новой роли:

Если НЕ РольДоступна(«ПолныеПрава») И НЕ РольДоступна(«Бухгалтер») И НЕ РольДоступна(«ТолькоЧтение»)

После этого удалось запустить, но окно без интерфейса и сразу нарушение прав доступа

{ОбщийМодуль.ИмпНепоставляемый.Модуль(1732)}: Ошибка при вызове метода контекста (Установить)
по причине:
Нарушение прав доступа!
 

Это тоже очень круто, т.к. модуль поставляется в закрытом виде и не ясно, что именно он там хотел установить :(.

Смотрим журнал регистрации: отказано в доступе к константе «Каталог файлов защиты».

Для упрощения процесса поиска необходимых прав

посмотрим, какие константы может изменять роль Бухгалтер и установим по аналогии

  • ГотовностьПрограммыКРаботе
  • ИмпВалютаПланирования
  • ИмпИспользоватьМеханизмАвтоматическогоОбменаДанными
  • ИмпКаталогЗащитыФайлов
  • ИмпСерияПутевогоЛиста
  • Имп_КаталогФайловЗащиты
  • ИмпСистемаЗащиты
  • ФайлОбработкиИнтернетПоддержкиПользователей (этот не будем разрешать)

Снова пробуем запуститься — очередная ошибка прав доступа

{ОбщийМодуль.ИмпНепоставляемый.Модуль(1732)}: Ошибка при вызове метода контекста (Установить)
по причине:
У пользователя недостаточно прав на исполнение операции над базой данных.
объект: 'ПланОбмена.Полный'; право: 'Чтение'
Таблица: 'Node14', SDBL-команда: 'SELECT'.

Добавим право Просмотр для ПланыОбмена и право Использование для интерфейсов (Общий, Полный, Бухгалтерский). Тестовому пользователю назначим основной интерфейс Бухгалтерский.

Очередная попытка запуска — новая ошибка

{МодульОбычногоПриложения(108)}: Ошибка при получении значения атрибута контекста (ТекущийПользователь)
 Если Не ЗначениеЗаполнено(ПараметрыСеанса.ТекущийПользователь) Тогда
по причине:
Нарушение прав доступа!
 

Посмотрим права на ПараметрыСеанса для роли Бухгалтер и сделаем по аналогии
Чтение+изменение

  • ДатаОбновленияПовторноИспользуемыхЗначенийМРО
  • ИспользуемыеПланыОбмена
  • ОбменДаннымиВключен
  • ОбщиеЗначения
  • ПравилаВыборочнойРегистрацииОбъектов
  • ПравилаРегистрацииОбъектов

Нет доступа

  • ЗагрузкаПараметровРаботыПрограммы
  • ПараметрыКлиентаНаСервере

Следующая ошибка:

{МодульОбычногоПриложения(559)}: Ошибка при вызове метода контекста (ПолучитьФорму)

Обработки.ПанельФункций.ПолучитьФорму().Открыть();
по причине:
Нарушение прав доступа!

Даем право на запуск обработки ПанельФункций.

Следующая ошибка:

{ОбщийМодуль.УправлениеПользователями.Модуль(135)}: Ошибка при вызове метода контекста (Записать)
 МенеджерЗаписи.Записать(Истина);
по причине:
Нарушение прав доступа!


Однако после закрытия работа продолжается и появляются другие окна:

{МодульОбычногоПриложения(575)}: Ошибка при вызове метода контекста (ПолучитьФорму)
  Форма = Обработки.ДополнительнаяИнформация.ПолучитьФорму("ФормаРабочийСтол");
по причине:
Нарушение прав доступа! 
 
 

Смотрим в журнале регистрации — отказано в праве Изменение для регистра сведений НастройкиПользователей.
Даем права:

  • использование обработки ДополнительнаяИнформация
  • регистр сведений НастройкиПользователей — Просмотр и Редактирование

Следующая ошибка:

{МодульОбычногоПриложения(190)}: Ошибка при вызове метода контекста (Создать)
 БИ = Обработки.БухгалтерскиеИтоги.Создать();
по причине:
Нарушение прав доступа!

Даем право на использование обработки БухгалтерскиеИтоги.

Следующая ошибка — при попытке сохранить настройки отчета ОСВ (оборотно-сальдовой ведомости)

{ОбщийМодуль.СтандартныеОтчеты.Модуль(867)}: Ошибка при вызове метода контекста (СоздатьЭлемент)
Настройка = Справочники.СохраненныеНастройки.СоздатьЭлемент();
по причине:
Нарушение прав доступа!
  

 

Даем все права для справочника СохраненныеНастройки, кроме ИнтерактивноеУдаление и прав для предопределенных.

Спустя время обнаружились еще проблемы

  1. при просмотре документов появляется ошибка права просмотра — Обработка. Предупреждение об изменениях
  2. при просмотре кассовых документов ошибка права использования — Обработка. Механизм взаимодействия с торговым оборудованием (надо искать обработку ТОСервер).
  3. при просмотре движений документа ошибка права использования — Обработка. Корректировка движений

При просмотре кассовых документов также возникает ошибка при открытии

{МодульОбычногоПриложения(667)}: Ошибка при вызове метода контекста (Создать)
глСерверТО = Обработки.ТОСервер.Создать();
по причине:
Нарушение прав доступа!

Понравилась статья? Поделить с друзьями:
  • Ошибка при вызове метода контекста проверитьвывод 1с
  • Ошибка при вызове метода контекста создать каталог
  • Ошибка при вызове метода контекста проверить объектxdto проверить
  • Ошибка при вызове метода контекста содержит
  • Ошибка при вызове метода контекста проверить заполнение