Нарушение прав доступа! (удаление элемента справочника) #573284


#0 by extrim-style
8.1 При программном удалении элемента справочника выскакивает эта ошибка. {Справочник.хз_СтатьиЗатрат.Форма.ФормаСписка}: Ошибка при вызове метода контекста (Удалить): Нарушение прав доступа!           Выборка.ПолучитьОбъект.Удалить; где Выборка.ПолучитьОбъект тип СправочникОбъект.хз_СтатьиЗатрат Права пользователей были немного подрезаны. Но на этот справочник у юзверя есть все права, кроме интерактивного удаления. Тем не менее эта ошибка - в чем тут дело?
#1 by Mort
В обработке удаления видимо режутся связанные объекты, на которые прав уже нет.
#2 by extrim-style
Удалить это стандартный метод СправочникОбъект.<Имя справочника>
#3 by Mort
Я очень рад.
#4 by Mort
А еще бывает событие "перед удалением" в модуле справочника.
#5 by rutony
-> Есть настройки, например, у регистра сведений, которые удаляют записи в случае удаления измерения
#6 by extrim-style
уже смотрел. нет такого. есть только ПередЗаписью.
#7 by hhhh
регистры сведений все проверил?
#8 by rutony
+ ну а на сам регистр ограниченные права сделай поиск ссылок на справочник, и проверь права на найденные регистры
#9 by extrim-style
Владельца у справочника нет. Ни с какими регистрами он не связан. Поиск ссылок в объекте показал на ПодсистемаХЗ, которой справочник принадлежит и 2 перечисления: Перечисление.ОтнесениеРасходовКДеятельностиЕНВД Перечисление.ВидыРасходовНУ У юзера есть права только на ПодсистемуХЗ. Перечисления в ролях не присутствуют. Но сами перечисления присутствуют в других подсистемах. Попытался дать юзеру права на эти подсистемы - толку нет. Подскажите, может вобще не обрезать пользователю права по подсистемам? На что это влияет?
#10 by extrim-style
Да и мне вобще непонятно, какая тут может быть связанная информация? Я получил объект справочника, но не могу его удалить. Почему?
#11 by extrim-style
Дал юзеру права на все подсистемы - толку нет. Значит дело не в подсистемах, а непосредственно в правах роли юзера. Но как понять, чего не хватает?
#12 by shuhard
приколист, на твой справочник сидят ссылки в тыще мест в других справочниках, Рг и х.з. где ещё
#13 by extrim-style
на мой справочник нет ни одной ссылки в конфигурации. Есть толко из него, те, которые в
#14 by shuhard
тогда пометь его на удаление и запусти штатную обработку далее зырь журнал
#15 by extrim-style
не понял. Пометить элемент справочника на удаление? Какую штатную обработку? Удаление помеченных объектов?
#16 by extrim-style
Поставлю вопрос по-другому. Имеется справочник, при открытии которого удаляются некоторые элементы по условию. Код: В последней строке выскакивает сообщение об ошибке удаления. Какие тут могут быть зависимости или может быть стандартные механизмы обработки удаления справочников в общих модулях или еще где-нибудь? Я вобще не воткну в чем трабл: получаю элемент справочника, у пользователя все права на  справочник (справочник от пользователя открывается), почему нельзя удалить, не пойму?
#17 by ДемонМаксвелла
Вообще не должны пользователи с ограниченными правами делать удаление объектов в базе. Только помечать.
#18 by extrim-style
Права даны ОтветственномуЮзверю.
#19 by extrim-style
Этот справочник - копия справочника СтатьиЗатрат, только перегруппирован по-другому, отсюда и необходимость удалять элементы сразу и не хранить мусор.
#20 by catena
ООО, с этой фразы начинаются многие забавные повести, а порой и триллеры...
#21 by extrim-style
у пользователя нет никаких лишних прав. только программная синхронизация одного справочника с другим.
#22 by extrim-style
Ну что никто не знает почему нельзя удалить элемент справочника?
#23 by extrim-style
хелп
#24 by catena
попробуй встать на эту строчку и нажать ф11, может правда в какие подписки лезет...
#25 by extrim-style
попробовал сейчас удалить от этого пользователя другой справочник, на который у пользователя также есть все права - выдал эту же ошибку. Получается работает какой-то общий механизм при удалении элемента справочника? И как его найти? Конфа Бух 1.6.
#26 by catena
попробуй встать на эту строчку и нажать ф11, может правда в какие подписки лезет...
#27 by extrim-style
уже пробовал. никуда не идет.
#28 by catena
Тады ай. У меня все удаляется.
#29 by extrim-style
*здесь крик о помощи*
#30 by hhhh
а в модуле объекта ничего нет? и что такое "программная синхронизация"?
#31 by hhhh
еще попробуй Выборка.ПолучитьОбъект.Записать;
#32 by extrim-style
программная синхронизация означает, что новый справочник создается на основе другого и содержание справочников должно совпадать. Т.е. при открытии происходит проверка на соответствие элементов, если елемента в исходном справочнике нет, то он должен удалиться из этого справочника. Как раз с этим моментом и возникла проблема. зачем записывать то, что уже записано? в модуле объекта почти ничего нет, заходит туда только при пометке удаления. А при непосредственном удалении не заходит. У пользователя с полными правами всё работает. У текущего пользователя, от которого запускаю - нет. Как понять чего не хватает. Может есть какая-то глобальная проверка? Но не представляю, где её искать.
#33 by hhhh
обмен может? На обмен права есть?
#34 by extrim-style
новый справочник - изначально копия старого, и в старом действительно был обмен. Но в новом эти галки сняты.
#35 by catena
@зачем записывать то, что уже записано? @ чтобы проверить, есть ли права...
#36 by НЕА123
> Выборка.ПолучитьОбъект.Удалить ой как некошерно!!!
#37 by extrim-style
чем?
#38 by extrim-style
Начал методом тыка подключать права для роли. Похоже дело в регистре сведений каком-то...
#39 by НЕА123
мда... так ты до сих пор не делал поиска ссылок на объекты?
#40 by НЕА123
2АЛЛ сегодняшний день на мисте - это что-то...!!!
#41 by extrim-style
я уже написал в обо всех ссылках
#42 by extrim-style
похоже, пока разбирался со своим вопросом, всё интересное на мисте пропустил...)
#43 by НЕА123
ссылки в конфигураторе что-ли искал? из >Ни с какими регистрами он не связан. из >Похоже дело в регистре сведений каком-то... Выборка может слететь. и нельзя удалять без проверки ссылок.
#44 by extrim-style
да нет никаких ссылок. я же сам создал этот объект.
#45 by shuhard
можно задвинул теперь предположим наличие в конфигурации подписки перед/при записи на все справочники, которая пишет в Рг сведений версии объектов или объекты доступа
#46 by shuhard
+1 кстати конфа до сих пор не озвучена, вдруг это УПП
#47 by extrim-style
Трам-пам-пам. Барабанная дробь! РС СоответствиеОбъектовДляОбмена. Не понял откуда ноги растут. Будет интересно если кто просвятит. В исходном справочнике СтатьиЗатрат есть настроенный обмен. В коде я сравниваю элементы обоих справочников. Но в этом справочнике обмен отключен. Не пойму каким он сюда вылез?
#48 by extrim-style
озвучена в . Бух 1.6
#49 by extrim-style
Вот более полный код:
#50 by extrim-style
справочники синхронизируются по наименованию статей
#51 by shuhard
не фига было выпендриваться, поиск ссылок со стороны предприятия ищет ссылку за секунды
#52 by extrim-style
я не понял, что речь идет о поиске данных в пользоват. режиме. Спрашивал об этом в .
#53 by shuhard
не свисти я тебе утром дал ответ пометь на удаление и запусти штатную обработку она даст все ссылки
#54 by extrim-style
я так и сделал. не было никаких проблем. элемент спокойно предлагался на удаление.
#55 by shuhard
топик закрыт
#56 by extrim-style
нет не закрыт! Я день промучился с этой траблой и нихрена не понял! Почему он просит у меня этот регистр?
#57 by extrim-style
и кстати этого регистра недостаточно. еще какой-то(какие-то) нужны, как оказалось.
#58 by catena
О, боже, а зачем: Элемент = Справочники.СтатьиЗатрат.НайтиПоНаименованию(Выборка.Наименование, Истина); ??? Не помечай на удаление, сделай НайтиСсылки
#59 by extrim-style
справочник-копия самостоятельный и не является ссылочным к исходному справочнику
#60 by catena
а ты уверен, что нет каких-нить регистров, в которые пишутся ВСЕ справочники?
#61 by extrim-style
нет. не уверен. а как мне это определить?
#62 by catena
Не помечай на удаление, сделай НайтиСсылки
#63 by catena
пардон, НайтиПоСсылкам
#64 by Sammo
Кстати, как вариант нет доступа на изменение регистра сведений, где в измерении тип ВсеСсылки При этом фактически записей в этом регистре по данному элементу справочника может и не быть
#65 by catena
Хм... А ведь Удалить действительно не проверяет ссылки. Пятница, однако.
#66 by extrim-style
а как ты это поняла?
#67 by Sammo
Емнип, кроме того, что в подписках и РС, где на измерение с данным типом стоит Ведущее
#68 by catena
Тут где-то СП по СП была, поищи.
#69 by extrim-style
ааа... а я думал о чем ты...
#70 by extrim-style
оказывается, еще и прав на документ какой-то не хватает...
#71 by extrim-style
Итого в сухом остатке - понадобились права на изменение для РС КоллизииПриОбмене, РС ОбъектыИнформационныхБаз, РС СоответствиеОбъектовДляОбмена, РС СоответствиеОбъектовИнформационныхБаз. Я так понял, что весь этот трабл связан именно с недостатком прав на обмен. Не знаю как обмен работает, но может в момент моего обращения к исходному справочнику СтатьиЗатрат он отрабатывает. А ошибка почему-то выскакивает позже?
#72 by Sammo
Указан ли в данных регистрах сведений в измерениях данный тип или тип ВсеСсылки?
#73 by extrim-style
Да. У каждого из этих регистров есть измерение с типом ЛюбаяСсылка.
#74 by Sammo
Тогда см. 64
#75 by Sammo
Классика... Еще из этой же серии - создается документ, который двигает регистр накоплений. На данный документ у человека прав нет, на регистр - есть. При формировании отчета по регистру - нарушение прав доступа (хотя документов еще не было)
#76 by extrim-style
а как это всё работает? можно поподробнее? Мало ли в каком регистре что указано. Если я не использую его непосредственно, то каким боком он тут вылез?
#77 by extrim-style
ап. интересно.
#78 by НЕА123
учиться, учиться и учиться (с)
#79 by extrim-style
ссылку не?
#80 by НЕА123
#81 by НЕА123
+
#82 by extrim-style
да, кстати, в этих регистрах эта ЛюбаяСсылка как ведущее. Но причем здесь мой левый справочник, ни с чем не связанный, и эти регистры? И почему именно в момент удаления происходит эта проверка?
#83 by Sammo
Рекомендую прочитать - что такое признак Ведущее у измерения Регистра сведений. И много думать...
#84 by extrim-style
Руководство разработчика. Ведущее - установка этого свойства имеет смысл для измерений, тип данных которых - ссылка на объект конфигурации. В этом случае считается, что запись регистра сведений имеет смысл, только пока существует этот объект. И что я отсюда должен вынести, кроме того, что здесь написано?
#85 by НЕА123
ты это... того... прочитай до конца .
#86 by extrim-style
хотя бы один снизошел... Тут написано - "запись регистра". Я в регистр ничего не записываю, тем более эти регистры вобще пустые.
#87 by catena
Запись регистра не может существовать без этого объект, т.е. даже при использовании Удалить, связанные записи пропадут. Вот он и лезет везеде, где твой элемент ПОТЕНЦИАЛЬНО может быть, а у него прав нету.
#88 by extrim-style
спасибо
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С