Меню

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

Здравствуйте!

Есть обычный пользователь, к некоторым подсистемам имеет доступ, к некоторым не имеет.

Задача — дать возможность пользователю удалять объекты, помеченные на удаление, в пределах его прав.

Если вызвать функцию НайтиПомеченныеНаУдаление(), то возникает ошибка:

{ОбщийМодуль.ОсновнойМодуль.Модуль(874)}:

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

Помеченные = НайтиПомеченныеНаУдаление();

по причине: У пользователя недостаточно прав на исполнение операции над базой данных.

объект: ‘Справочник.РазделыПроектовРазработкиДокументации’;

право: ‘Чтение’

Таблица: ‘Reference208’, SDBL-команда: ‘SELECT’.

То есть, пользователь не имеет доступа к справочнику РазделыПроектовРазработкиДокументации (этот справочник принадлежит подсистеме, с которой данный пользователь работать не должен). Так настроены права, так нужно.

Но это же не должно обозначать, что вообще нельзя выполнить поиск помеченных на удаление объектов, в пределах прав пользователя!

Вопрос: как получить объекты, помеченные на удаление, и доступные для удаления пользователю?

Здравствуйте. Хотел почистить дубли характеристик и загрузить список Штрихкодов.
в УНФ1.6.23 скачал расширение и установил через стандартный ВсеФункции — Общие- Работа с расширениями — Загрузить

в меню О подсистеме получаю 3 ошибки

В конфигурации обнаружены недоступные на клиенте (Управляемое приложение) общие модули с обработчиками подписок на события менеджеров.
Поэтому в работе некоторых инструментов возможны ошибки «При подписке * на событие * произошла ошибка. Обработчик события не найден.»
Рекомендуется установить флажок «Вызова сервера» или «Клиент (Управляемое приложение)» и обеспечить компиляцию у этих общих модулей: СобытияДокументовУНФ,

В нужном инструменте удаления с контролем ссылок ошибка:

{ИнструментыРазработчикаTormozit Обработка.ирУдалениеОбъектовСКонтролемСсылок.Форма.Форма.Форма(112)}: Ошибка при вызове метода контекста (НайтиПомеченныеНаУдаление): При подписке ПолучитьПредставлениеДокумента на событие ОбработкаПолученияПредставления произошла ошибка. Обработчик события не найден.

В обычных формах предприятие не запускаеся, т.к. возникает ошибка:

Переменная не определена (ИнтеграцияЕГАИСУНФ)

НайтиПомеченныеНаУдаление

Находит все помеченные на удаление
объекты.

Синтаксис:

НайтиПомеченныеНаУдаление(<Объекты>)

Англоязычный синоним:

FindMarkedForDelete

Параметры:

<Объекты>

Идентификатор объекта типа
«СписокЗначений», в который данная
процедура помещает найден­ные
объекты.

Описание:

Процедура НайтиПомеченныеНаУдаление
находит все помеченные на удаление
объекты и помещает их в список значений.

Пример:

Список =
СоздатьОбъект(«Список Значений»);

НайтиПомеченныеНаУдаление(Список);

НайтиСсылки

Находит ссылки на объекты, переданные
в списке значений.

Синтаксис:

НайтиСсылки(<Объекты>,
<Ссылки>)

Англоязычный синоним:

FindReferences

Параметры:

<Объекты>

Конкретное значение объекта
или объект типа «СписокЗначений», в
котором данной процедуре передаются
объекты, по которым надо найти ссылки.

<Ссылки>

Идентификатор объекта типа
«ТаблицаЗначений», в который данная
процедура помещает найденные ссылки
на объекты. Таблица значений состоит
из 3 колонок:

1. Объект — объект, на который
ссылаются;

2. Ссылка — объект, который содержит
ссылку;

3.
Комментарий — комментарий к ссылке.

Описание:

Процедура НайтиСсылки
находит ссылки на переданные в списке
объекты, и помещает их в таблицу значений.

Пример:

Список =
СоздатьОбъект(«СписокЗначений»);

ТаблицаСсылок
= СоздатьОбъект(«ТаблицаЗначений»);

НайтиПомеченныеНаУдаление(Список);

НайтиСсылки(Список,
ТаблицаСсылок);

УдалитьОбъекты

Удалить объекты, переданные в списке
значений.

Синтаксис:

УдалитьОбъекты(<Объекты>,
<Проверять>, <Ссылки>)

Англоязычный синоним:

DeleteObjects

Параметры:

<Объекты>

Конкретное значение объекта
или объект типа «СписокЗначений», в
котором данной процедуре передаются
объекты, которые надо удалить.

<Проверять>

Необязательный параметр.
Число: 1 — перед удале­нием проверяется
— нет ли ссылок на удаляемый объект.
Если есть, то объект не удаляется, а
ссылки помещаются в таблицу значений
<Ссылки>.
Любое другое число — проверку не
выполнять. Значение по умолчанию: 1.

<Ссылки>

Необязательный параметр.
Идентификатор объекта типа
«ТаблицаЗначений», в который данная
про­цедура помещает найденные
ссылки на объекты. Таблица значений
состоит из 3 колонок:

1. Объект — объект, на который
ссылаются;

2. Ссылка — объект, который
содержит ссылку;

3.
Комментарий — комментарий к ссылке.

Описание:

Процедура УдалитьОбъекты
удаляет объекты, переданные в списке
значе­ний.

Пример:

Список =
СоздатьОбъект(«СписокЗначений»);

ТаблицаСсылок
= СоздатьОбъект(«ТаблицаЗначений»);

НайтиПомеченныеНаУдаление(Список);

УдалитьОбъекты(Список,
1, ТаблицаСсылок);

ОбработкаОжидания

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

Синтаксис:

ОбработкаОжидания([<ИмяПроцедуры>],
[<ИнтервалВызова>])

Англоязычный синоним:

IdleProcessing

Параметры:

<ИмяПроцедуры>

Необязательный параметр.
Строковое выражение — имя процедуры
глобального модуля, которая будет
вызываться периодически с интервалом
времени <ИнтервалВызова>.
Тело процедуры <ИмяПроцедуры>
должно быть написано разра­ботчиком
конфигурации в глобальном программ­ном
модуле.

Если в качестве параметра
передается «пустая строка», то ранее
запущенный процесс прекраща­ется.

Если
параметр опущен, то данная процедура
ОбработкаОжидания
просто возвращает имя процедуры
глобального модуля, которая назначе­на
для периодического запуска в текущий
мо­мент.

<ИнтервалВызова>

Необязательный параметр.
Числовое выражение — интервал времени
в секундах, с которым пе­риодически
будет вызываться процедура гло­бального
модуля <ИмяПроцедуры>.

Если в качестве параметра
передается 0 (ноль), то ранее запущенный
процесс прекращается.

Если
параметр опущен, то данная процедура
ОбработкаОжидания просто возвращает
имя процедуры глобального модуля,
которая назначе­на для периодического
запуска в текущий мо­мент.

Возвращаемое значение:

Имя процедуры глобального модуля,
которая назначена для периодического
запуска (на момент до исполнения
процедуры).

Описание:

Функция ОбработкаОжидания
инициирует периодический вызов проце­дуры
глобального модуля <ИмяПроцедуры>
с интервалом времени <ИнтервалВызова>.

Пример:

Процедура
СформироватьТекущийОтчетПродаж

КонецПроцедуры;

ОбработкаОжидания(«СформироватьТекущийОтчетПродаж»,
60);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #

    20.03.2015288.77 Кб317.doc

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

1

2

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

Новая тема

Ответить

Zebraaa

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

Платформа 1с 8.2.15.310, релиз 1.0.12.2 При открытии стандартного отчета Карточка субконто выдается сообщение: Ошибка при вызове метода контекста (Найти поле). Если доступные поля. Найти поле(Отборы.Элементы [Я]_ Левое значение).=Неопределенно Тогда по причине Несоответствии типов (параметр номер 1) <br>Причем такая ошибка выходит только у одного пользователя, у других все нормально открывается.

Sh_S

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

где-то стоит отбор со сравнением с пустым значением, зайдите в настройку и посмотрите

Zebraaa

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

А можно ,пожалуиста, по подробнее!

Sh_S

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

мне кажется теперь, что я не права. Под рукой бухгалтерии нет, но в УПП и ЗУПе если поставить отбор по пустому значению выходит просто шапка отчета. Но все-таки посмотрите внимательно на отборы в настройках.

Zebraaa

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

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

Денис (САМАРА)

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

Платформу обновить до последней. Выполнить тестирование и исправление со всеми флагами.

Zebraaa

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

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

Денис (САМАРА)

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

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

Zebraaa

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

Кстати, самое интересное, что сохраненных настроек по этому пользователю нет, а по другим есть.

Денис (САМАРА)

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

Имеются ввиду «Сохраненные варианты отчета».

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

Изнаначально взято из конфигурации 1с Документооборот.

В 1с Документооборот Используются справочники для представления документов и, т.к. для элементов справочников нет понятия проведение, при контроле ссылочной целостности некоторые ссылки исключаются. Далее удаление производится автоматически по ведущему измерению регистра.
Список исключаемых метаданных берется из ОбщегоНазначенияПереопределяемый.ПолучитьИсключенияПоискаСсылок().
Добавлена возможность интерактивной корректировки списка исключаемых типов ссылок.

Используется форма ВыборОбъектовМетаданных, взятая из общих форм 1с Документооборот. Подошла без единого исправления, даже позаимствовал функцию ЗначениеПометкиЭлементов в основную форму обработки.

В встроенной в кофигурацию обработке процедуры расположены в модуле менеджера. Пришлось перенести их в модуль объекта. Возможно вставка в конфигурацию.

Есть аналогичные публикации, например, http://forum.infostart.ru/forum24/topic43769/.
Отличий не знаю, т.к. у меня нет прав на скачивание Cry.

Это есть мои упражнения с управляемыми формами.
Попробовал передать таблицу значений между сервером и клиентом (не очень удачно).
Попытался использовать серверную функцию в процедуре ПриАктивизацииСтроки (не потому, что надо, а потому, что хочетсяSmile).
Замечено, что не совпадает удаление в монопольном и немонопольном режимах (в монопольном, обычно, удаляет больше объектов).
Представляется как есть, без гарантий.

UPD: Добавлена обычная форма. Некоторые изменения, в основном, косметического характера.

UPD2: Исправлена часть ошибок, добавленная при предыдущем обновлении :). Добавлены флажки «Сообщать об удаленных» и «Удалять в транзакции». Количество удаляемых в монопольном и немонопольном режимах, практически, сравнялось.

 //Удаляемые = осОбработкаОбъект.ПолучитьПомеченныеНаУдаление();
Удаляемые = осОбработкаОбъект.ПолучитьПомеченныеНаУдаление().Результат;
//ЗначениеВРеквизитФормы(осОбработкаОбъект, "Объект");

UPD3: Исправлены замеченные ошибки.

UPD4: Исправлена ошибка: планы видов расчета не включались в дерево метаданных — ошибка копи-пасты, перенесенная из 1с-Документооборот. Конечно, документообороту виды расчета глубоко параллельны, но мне вот понадобились :).

UPD5: Добавлены ПРОЦЕДУРЫ И ФУНКЦИИ РЕГИСТРАЦИИ обработки в информационной базе

UPD6: Исправлены замеченные ошибки отображения статуса возможности удаления. Замечено, что если установлена дата запрета редактирования и есть ссылки на записи периодическго регистра сведений с более ранним периодом, чем дата запрета редактирования, то статус зеленый (можно удалить), но удалить невозможно. Пока ничего не делал по этому поводу.

UPD7: Добавил планы обмена.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка при вызове метода контекста найтипокоду
  • Ошибка при вызове метода контекста послать каталог не обнаружен v8