Добрый день!
Подскажите, пожалуйста, не могу разобраться.
Есть запрос. Под полными правами отрабатывает, под др. правами не отрабатывает. Вроде всё проверила, ко всему доступ у пользователя есть.
Ругается при выполнении:РаботавшиеВОрганизации = Запрос.Выполнить().Выгрузить();
Ошибка при вызове метода контекста Выполнить.
Пробовала так:
В таком случае и с полными правами не отрабатывает.
Ошибка при вызове метода контекста ВыполнитьЗапросПолныйДоступ
Что не так, что можно сделать?
Вот текст запроса:
Подскажите, пожалуйста, не могу разобраться.
Есть запрос. Под полными правами отрабатывает, под др. правами не отрабатывает. Вроде всё проверила, ко всему доступ у пользователя есть.
Ругается при выполнении:РаботавшиеВОрганизации = Запрос.Выполнить().Выгрузить();
Ошибка при вызове метода контекста Выполнить.
Пробовала так:
РаботавшиеВОрганизации = ПолныеПрава.ВыполнитьЗапросПолныйДоступ(Запрос)
Функция ВыполнитьЗапросПолныйДоступ(Запрос) Экспорт
УстановитьПривилегированныйРежим(Истина);
Возврат Запрос.Выполнить().Выгрузить();
КонецФункции
В таком случае и с полными правами не отрабатывает.
Ошибка при вызове метода контекста ВыполнитьЗапросПолныйДоступ
Что не так, что можно сделать?
Вот текст запроса:
ВЫБРАТЬ РАЗРЕШЕННЫЕ
РаботникиОрганизаций.Сотрудник КАК Сотрудник,
РаботникиОрганизаций.Сотрудник.Физлицо КАК ФизЛицо,
РаботникиОрганизаций.ЗанимаемыхСтавок КАК СтавокНаНачало,
0 КАК СтавокНаКонец,
NULL КАК ДатаПриема,
NULL КАК СокращенноеРабочееВремя,
NULL КАК ДатаУвольнения,
NULL КАК ДатаСозданияРабочегоМеста,
NULL КАК ПринятНаНовоеРабочееМесто
ПОМЕСТИТЬ СписокРаботников
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаНач, Организация = &Организация) КАК РаботникиОрганизаций
ГДЕ Истина И Сотрудник В (ВЫБРАТЬ
ТекРаботники.Сотрудник
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаПодразделения, Организация = &Организация) КАК ТекРаботники
ГДЕ
(ТекРаботники.ПодразделениеОрганизации В ИЕРАРХИИ (&Подразделение) ИЛИ ТекРаботники.ПодразделениеОрганизации = &Подразделение)
)
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
РаботникиОрганизаций.Сотрудник,
РаботникиОрганизаций.Сотрудник.Физлицо,
0,
РаботникиОрганизаций.ЗанимаемыхСтавок,
NULL,
NULL,
NULL,
NULL,
NULL КАК ПринятНаНовоеРабочееМесто
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаКонВключая, Организация = &Организация) КАК РаботникиОрганизаций
ГДЕ Истина И Сотрудник В (ВЫБРАТЬ
ТекРаботники.Сотрудник
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаПодразделения, Организация = &Организация) КАК ТекРаботники
ГДЕ
(ТекРаботники.ПодразделениеОрганизации В ИЕРАРХИИ (&Подразделение) ИЛИ ТекРаботники.ПодразделениеОрганизации = &Подразделение)
)
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
РаботникиОрганизаций.Сотрудник,
РаботникиОрганизаций.Сотрудник.Физлицо,
0,
0,
РаботникиОрганизаций.Период,
ВЫБОР КОГДА РаботникиОрганизаций.ЗанимаемыхСтавок < 1 ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК СокращенноеРабочееВремя,
NULL,
РаботникиОрганизаций.ДатаСозданияРабочегоМеста,
РаботникиОрганизаций.ПринятНаНовоеРабочееМесто
ИЗ
РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
ГДЕ
РаботникиОрганизаций.Период >= &ДатаНач
И РаботникиОрганизаций.Период < &ДатаКон
И РаботникиОрганизаций.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.ПриемНаРаботу)
И РаботникиОрганизаций.Организация = &Организация
И Сотрудник В (ВЫБРАТЬ
ТекРаботники.Сотрудник
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаПодразделения, Организация = &Организация) КАК ТекРаботники
ГДЕ
(ТекРаботники.ПодразделениеОрганизации В ИЕРАРХИИ (&Подразделение) ИЛИ ТекРаботники.ПодразделениеОрганизации = &Подразделение)
)
И НЕ РаботникиОрганизаций.Сотрудник.ВидЗанятости = ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ВнутреннееСовместительство)
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
РаботникиОрганизаций.Сотрудник,
РаботникиОрганизаций.Сотрудник.Физлицо,
0,
0,
NULL,
NULL,
РаботникиОрганизаций.Период,
NULL,
NULL КАК ПринятНаНовоеРабочееМесто
ИЗ
РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
ГДЕ
РаботникиОрганизаций.Период МЕЖДУ &ДатаНач И &ДатаКон
И РаботникиОрганизаций.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
И РаботникиОрганизаций.Организация = &Организация
И Сотрудник В (ВЫБРАТЬ
ТекРаботники.Сотрудник
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаПодразделения, Организация = &Организация) КАК ТекРаботники
ГДЕ
(ТекРаботники.ПодразделениеОрганизации В ИЕРАРХИИ (&Подразделение) ИЛИ ТекРаботники.ПодразделениеОрганизации = &Подразделение)
)
И НЕ РаботникиОрганизаций.Сотрудник.ВидЗанятости = ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ВнутреннееСовместительство)
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
РаботникиОрганизаций.Сотрудник,
РаботникиОрганизаций.Сотрудник.Физлицо,
0,
0,
NULL,
ВЫБОР КОГДА РаботникиОрганизаций.ЗанимаемыхСтавок < 1 ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК СокращенноеРабочееВремя,
NULL,
РаботникиОрганизаций.ДатаСозданияРабочегоМеста,
РаботникиОрганизаций.ПринятНаНовоеРабочееМесто
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаКонНеВключая, Организация = &Организация И НЕ ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)) КАК РаботникиОрганизаций
ГДЕ Истина И Сотрудник В (ВЫБРАТЬ
ТекРаботники.Сотрудник
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаПодразделения, Организация = &Организация) КАК ТекРаботники
ГДЕ
(ТекРаботники.ПодразделениеОрганизации В ИЕРАРХИИ (&Подразделение) ИЛИ ТекРаботники.ПодразделениеОрганизации = &Подразделение)
)
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
ВЫБОР
КОГДА СписокРаботников.Сотрудник.ВидЗанятости = ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ОсновноеМестоРаботы)
ТОГДА 1
ИНАЧЕ 2
КОНЕЦ КАК Категория,
СписокРаботников.Сотрудник,
СписокРаботников.ФизЛицо,
СписокРаботников.ФизЛицо.КодПоДРФО КАК КодПоДРФО,
СУММА(СписокРаботников.СтавокНаНачало) КАК СтавокНаНачало,
СУММА(СписокРаботников.СтавокНаКонец) КАК СтавокНаКонец,
МИНИМУМ(СписокРаботников.ДатаПриема) КАК ДатаПриема,
МАКСИМУМ(СписокРаботников.ДатаУвольнения) КАК ДатаУвольнения,
МАКСИМУМ(СписокРаботников.ДатаСозданияРабочегоМеста) КАК ДатаСозданияРабочегоМеста,
МАКСИМУМ(СписокРаботников.ПринятНаНовоеРабочееМесто) КАК ПринятНаНовоеРабочееМесто,
МАКСИМУМ(СписокРаботников.СокращенноеРабочееВремя) КАК СокращенноеРабочееВремя,
МАКСИМУМ(ФИОФизЛицСрезПоследних.Фамилия) КАК Фамилия,
МАКСИМУМ(ФИОФизЛицСрезПоследних.Имя) КАК Имя,
МАКСИМУМ(ФИОФизЛицСрезПоследних.Отчество) КАК Отчество,
МАКСИМУМ(ВЫБОР
КОГДА ЕстьNULL(ГражданствоФизЛиц.НеЯвляетсяНалоговымРезидентом, ЛОЖЬ)
ТОГДА 0
КОГДА ЕстьNULL(ГражданствоФизЛиц.Страна, ЗНАЧЕНИЕ(Справочник.КлассификаторСтранМира.ПустаяСсылка)) = ЗНАЧЕНИЕ(Справочник.КлассификаторСтранМира.ПустаяСсылка)
ИЛИ ЕстьNULL(ГражданствоФизЛиц.Страна, ЗНАЧЕНИЕ(Справочник.КлассификаторСтранМира.ПустаяСсылка)) = ЗНАЧЕНИЕ(Справочник.КлассификаторСтранМира.Украина)
ТОГДА 1
ИНАЧЕ 0
КОНЕЦ) КАК Гражданин,
ВЫБОР
КОГДА (НЕ ФИОФизЛицСрезПоследних.Фамилия = ФИОФизЛицСрезНач.Фамилия)
ИЛИ (НЕ ФИОФизЛицСрезПоследних.Имя = ФИОФизЛицСрезНач.Имя)
ИЛИ (НЕ ФИОФизЛицСрезПоследних.Отчество = ФИОФизЛицСрезНач.Отчество)
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК ИзменилосьФИО
ИЗ
СписокРаботников КАК СписокРаботников
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&ДатаКонНеВключая, ) КАК ФИОФизЛицСрезПоследних
ПО СписокРаботников.ФизЛицо = ФИОФизЛицСрезПоследних.ФизЛицо
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&ДатаНач, ) КАК ФИОФизЛицСрезНач
ПО СписокРаботников.ФизЛицо = ФИОФизЛицСрезНач.ФизЛицо
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ГражданствоФизЛиц.СрезПоследних(&ДатаКон, ) КАК ГражданствоФизЛиц
ПО СписокРаботников.ФизЛицо = ГражданствоФизЛиц.ФизЛицо
СГРУППИРОВАТЬ ПО
ВЫБОР
КОГДА СписокРаботников.Сотрудник.ВидЗанятости = ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ОсновноеМестоРаботы)
ТОГДА 1
ИНАЧЕ 2
КОНЕЦ,
СписокРаботников.Сотрудник,
СписокРаботников.ФизЛицо,
ВЫБОР
КОГДА (НЕ ФИОФизЛицСрезПоследних.Фамилия = ФИОФизЛицСрезНач.Фамилия)
ИЛИ (НЕ ФИОФизЛицСрезПоследних.Имя = ФИОФизЛицСрезНач.Имя)
ИЛИ (НЕ ФИОФизЛицСрезПоследних.Отчество = ФИОФизЛицСрезНач.Отчество)
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ
УПОРЯДОЧИТЬ ПО
Фамилия,Имя,Отчество,КодПоДРФО
ПоказатьПо теме из базы знаний
- Обучение: Использование рекурсии при обращении к результатам выполнения запроса
- Управляемая консоль отчетов – новый функциональный инструмент для работы с запросами и СКД в управляемых формах
- Одно из возможных решений ошибки "Ошибка при выполнении запроса POST к ресурсу /e1cib/modules/call"
- Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm. Ошибка SDBL: Пропущена точка с запятой
- Экспертный кейс. Недостаточно памяти для получения результата запроса: что это такое и как с этим бороться?
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот