helpf.pro
Регистрация

v8: Запрос

Ermak
11.06.2013 10:01Прочитано: 6899
Подскажите пожалуйста почему вылезла ошибка

{Форма.ОтчетОбНеИсполненныхКонтрольныхПоручениях.Форма(183)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить().Выбрать();
по причине:
{(5, 2)}: Поле не входит в группу "Документооборот.Содержание"
<<?>>Документооборот.Содержание КАК Содержание


Код 1C v 8.х
 Запрос = Новый Запрос (
"ВЫБРАТЬ
| УниверсальнаяЗадача.КомуНазначено,
| УниверсальнаяЗадача.ЗадачаПоДокументу,
| УниверсальнаяЗадача.КонтрольныйСрок КАК КонтрольныйСрок,
| Документооборот.Содержание КАК Содержание
|ИЗ
| Задача.УниверсальнаяЗадача КАК УниверсальнаяЗадача
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Документооборот КАК Документооборот
| ПО УниверсальнаяЗадача.ЗадачаПоДокументу = Документооборот.Ссылка
|ГДЕ
| УниверсальнаяЗадача.КонтрольныйСрок МЕЖДУ &Дата1 И &Дата2
| И УниверсальнаяЗадача.КомуНазначено.Организация В(&Организация)" + ?(ВидДокумента.Пустая(), "", "
| И УниверсальнаяЗадача.ЗадачаПоДокументу.ВидДокумента В ИЕРАРХИИ(&ВидДокумента)") + "
| " + ?(Подразделение.Пустая(), "", "
| И УниверсальнаяЗадача.ПодразделениеКомуНазначено В ИЕРАРХИИ(&Подразделение)") + "
| И УниверсальнаяЗадача.ДатаИсполнения = &ПустаяДата
| " + ? (Пользователь.Пустая(), "", "
| И УниверсальнаяЗадача.КомуНазначено = &Пользователь") + "
|
|СГРУППИРОВАТЬ ПО
| УниверсальнаяЗадача.КомуНазначено,
| УниверсальнаяЗадача.ЗадачаПоДокументу,
| УниверсальнаяЗадача.КонтрольныйСрок
|
|УПОРЯДОЧИТЬ ПО
| КомуНазначено");
Yandex
Возможно, вас также заинтересует
Реклама на портале
Mokey
11.06.2013 10:40Ответ № 1
Написано же по-русски: Поле не входит в группу. Впишите в блок СГРУППИРОВАТЬ ПО это поле и будет Вам счастье, а н абудущее, просто открывайте конструктор, он сразу скажет, правильный запрос или нет))
Ermak
11.06.2013 10:42Ответ № 2
я через конструктор и делал
Ermak
11.06.2013 10:43Ответ № 3
Я сделал вот так

Код 1C v 8.х
 		Запрос = Новый Запрос (
"ВЫБРАТЬ
| УниверсальнаяЗадача.КомуНазначено,
| УниверсальнаяЗадача.ЗадачаПоДокументу,
| УниверсальнаяЗадача.КонтрольныйСрок КАК КонтрольныйСрок,
| Документооборот.Содержание КАК Содержание
|ИЗ
| Задача.УниверсальнаяЗадача КАК УниверсальнаяЗадача
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Документооборот КАК Документооборот
| ПО УниверсальнаяЗадача.ЗадачаПоДокументу = Документооборот.Ссылка
|ГДЕ
| УниверсальнаяЗадача.КонтрольныйСрок МЕЖДУ &Дата1 И &Дата2
| И УниверсальнаяЗадача.КомуНазначено.Организация В(&Организация)" + ?(ВидДокумента.Пустая(), "", "
| И УниверсальнаяЗадача.ЗадачаПоДокументу.ВидДокумента В ИЕРАРХИИ(&ВидДокумента)") + "
| " + ?(Подразделение.Пустая(), "", "
| И УниверсальнаяЗадача.ПодразделениеКомуНазначено В ИЕРАРХИИ(&Подразделение)") + "
| И УниверсальнаяЗадача.ДатаИсполнения = &ПустаяДата
| " + ? (Пользователь.Пустая(), "", "
| И УниверсальнаяЗадача.КомуНазначено = &Пользователь") + "
|
|СГРУППИРОВАТЬ ПО
| УниверсальнаяЗадача.КомуНазначено,
| УниверсальнаяЗадача.ЗадачаПоДокументу,
| УниверсальнаяЗадача.КонтрольныйСрок,
| Документооборот.Содержание
|
|УПОРЯДОЧИТЬ ПО
| КомуНазначено");


опять ошибка

{Форма.ОтчетОбНеИсполненныхКонтрольныхПоручениях.Форма(184)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить().Выбрать();
по причине:
Ошибка выполнения запроса
по причине:
У пользователя недостаточно прав на исполнение операции над базой данных.
Mokey
11.06.2013 14:11Ответ № 4
Но это уже из другой оперы, к задачам, по всей видимости, нет у Вас прав доступа
Ermak
11.06.2013 15:11Ответ № 5
Я не понимаю что за права доступа над базой. Их можно как нибудь отлючить
Ermak
11.06.2013 16:07Ответ № 6
я просто не могу понять почему вылезла такая ошибка, до этого у меня был запрос
Код 1C v 8.х
 Запрос = Новый Запрос (
"ВЫБРАТЬ
| УниверсальнаяЗадача.КомуНазначено,
| УниверсальнаяЗадача.ЗадачаПоДокументу,
| УниверсальнаяЗадача.КонтрольныйСрок КАК КонтрольныйСрок
|ИЗ
| Задача.УниверсальнаяЗадача КАК УниверсальнаяЗадача
|ГДЕ
| УниверсальнаяЗадача.КонтрольныйСрок МЕЖДУ &Дата1 И &Дата2
| И УниверсальнаяЗадача.КомуНазначено.Организация В(&Организация)
| " + ?(ВидДокумента.Пустая(), "", "
| И УниверсальнаяЗадача.ЗадачаПоДокументу.ВидДокумента В ИЕРАРХИИ(&ВидДокумента)") + "
| " + ?(Подразделение.Пустая(), "", "
| И УниверсальнаяЗадача.ПодразделениеКомуНазначено В ИЕРАРХИИ(&Подразделение)") + "
| И УниверсальнаяЗадача.ДатаИсполнения = &ПустаяДата
| " + ? (Пользователь.Пустая(), "", "
| И УниверсальнаяЗадача.КомуНазначено = &Пользователь") + "
|
|СГРУППИРОВАТЬ ПО
| УниверсальнаяЗадача.КомуНазначено,
| УниверсальнаяЗадача.ЗадачаПоДокументу,
| УниверсальнаяЗадача.КонтрольныйСрок
|
|УПОРЯДОЧИТЬ ПО
| КомуНазначено");

Я добавил только Документооборот.Содержание КАК Содержание и теперь у меня нет прав, что то мне не понятно
Dana
13.06.2013 10:06Ответ № 7
Поставь ПолныеПрава, Пользователь - просто у тебя нет прав на изменение в справочниках.
Mokey
13.06.2013 10:07Ответ № 8
(6) Ermak, если после добавления появилась ошибка, то посмотрите права на справочник Документооборот

(7) Dana, он ещё не изменяет, а пытается прочитать данные
Изменено 13.06.13 10:08:31
Ermak
13.06.2013 10:29Ответ № 9
Пользователь который формирует имеет права Администратора, т.е полные права. Я добавил
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ, ошибку не выводит но значение тоже не выводит, почему?
Ermak
13.06.2013 10:35Ответ № 10
Есть такой запрос

Код 1C v 8.х
 ТекстЗапроса = "
|ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
| Документооборот.РегистрационныйНомер КАК РегистрационныйНомер,
| Документооборот.Контрагент КАК ОрганизацияОтправитель,
| Документооборот.Ссылка КАК Документ,
| Документооборот.ВидДокумента КАК ВидДокумента,
| Документооборот.ДатаРегистрации КАК ДатаРегистрации,
| Документооборот.Содержание КАК Содержание
|ИЗ
| Справочник.Документооборот КАК Документооборот
| " + ?(ВыводитьБезРезолюций, "ЛЕВОЕ", "") + " СОЕДИНЕНИЕ Задача.УниверсальнаяЗадача КАК УниверсальнаяЗадача
| ПО (УниверсальнаяЗадача.ЗадачаПоДокументу = Документооборот.Ссылка)
| И ((НЕ УниверсальнаяЗадача.СостояниеЗадачи В (&СписокСостояний)))
|ГДЕ
| Документооборот.ДатаРегистрации <> ДАТАВРЕМЯ(1, 1, 1)
| И Документооборот.ДатаРегистрации >= &ДатаНачала";


он работает буз ошибок и выводит результат
Mokey
13.06.2013 12:39Ответ № 11
(10) Ermak, потому что РАЗРЕШЁННЫХ записей нет. Смотрите права на справочник у роли Администратор
Ermak
13.06.2013 13:40Ответ № 12
(11) Mokey, а почему тогда мой запрос не выводит а этот запрос (10) Ermak, выводит данные, хотя работает один и тот же пользователь.
Ermak
13.06.2013 13:43Ответ № 13
Увидел что у роли Администратор на Чтение справочника Документооборот прописан такой код

Код 1C v 8.х
 ТекущаяТаблица ГДЕ ВЫБОР
КОГДА ТекущаяТаблица.ВидДокумента.ИспользованиеОграниченнойДоступности
И (НЕ &ЗаписьРазрешена)
ТОГДА ВЫБОР
КОГДА &ОтобразитьВСЕдокументы
И 1 В
(ВЫБРАТЬ
1 КАК Поле1
ИЗ
Справочник.ВидыДокументовДляДокументооборота.ПользователиГруппыРолиИмеющиеПолныйДоступ КАК ВидыДокументовДляДокументооборотаПользователиГруппыРолиИмеющиеПолныйДоступ
ГДЕ
ВидыДокументовДляДокументооборотаПользователиГруппыРолиИмеющиеПолныйДоступ.Ссылка = ТекущаяТаблица.ВидДокумента
И ВидыДокументовДляДокументооборотаПользователиГруппыРолиИмеющиеПолныйДоступ.ПользовательГруппаРоль В (&РольПользовательГруппаТекущегоПользователя))
ТОГДА ИСТИНА
ИНАЧЕ 1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
1 КАК Поле1
ИЗ
РегистрСведений.ДОУ_ОбъектыДоступаДокументооборот КАК ДОУ_ОбъектыДоступаДокументооборот
ГДЕ
ДОУ_ОбъектыДоступаДокументооборот.Пользователь = &Пользователь
И ДОУ_ОбъектыДоступаДокументооборот.Документооборот = ТекущаяТаблица.Ссылка)
КОНЕЦ
КОГДА (НЕ &ИспользоватьRLS)
И &ОтобразитьВСЕдокументы
ИЛИ &ЗаписьРазрешена
ТОГДА ИСТИНА
ИНАЧЕ ВЫБОР
КОГДА 1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
1 КАК Поле1
ИЗ
РегистрСведений.ДОУ_ОбъектыДоступаДокументооборот КАК ДОУ_ОбъектыДоступаДокументооборот
ГДЕ
ДОУ_ОбъектыДоступаДокументооборот.Пользователь = &ПользовательПодКоторымРаботаем
И ДОУ_ОбъектыДоступаДокументооборот.Документооборот = ТекущаяТаблица.Ссылка)
ТОГДА ИСТИНА
ИНАЧЕ ВЫБОР
КОГДА &ОтобразитьВСЕдокументы
И 1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
1 КАК Поле1
ИЗ
РегистрСведений.ДОУ_ОбъектыДоступаДокументооборотПоОтборам КАК ДОУ_ОбъектыДоступаДокументооборот
ГДЕ
ДОУ_ОбъектыДоступаДокументооборот.РольПользовательГруппа В (&РольПользовательГруппа)
И ДОУ_ОбъектыДоступаДокументооборот.Документооборот = ТекущаяТаблица.Ссылка)
ТОГДА ИСТИНА
ИНАЧЕ ВЫБОР
КОГДА 1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
1 КАК Поле2
ИЗ
РегистрСведений.ДОУ_ОбъектыДоступаДокументооборотПоПодразделениям КАК ДОУ_ОбъектыДоступаДокументооборот
ГДЕ
ДОУ_ОбъектыДоступаДокументооборот.Подразделение В (&СписокПодразделенийПользователя)
И ДОУ_ОбъектыДоступаДокументооборот.Документооборот = ТекущаяТаблица.Ссылка)
И &ОтобразитьВСЕдокументы
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ
КОНЕЦ
КОНЕЦ
КОНЕЦ


Но честно сказать не хотелось бы что то менять в конфе, может есть способ как обойтись без редактирование конфы
Ermak
13.06.2013 13:49Ответ № 14
Всем спасибо разобрался! )
Ermak
13.06.2013 13:49Ответ № 15
Вопрос закрыт!
Подсказка: Щелникни по Имени пользователя напротив ответа, и тем самым покажешь, что сообщение адресовано ему.
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.