делаю запрос в ЗУП 3.1

```1c
    ВЫБРАТЬ
    РазовоеНачисление.Начисления.Сотрудник КАК Сотрудник,
    РазовоеНачисление.Начисления.Результат КАК Компенсация
    ИЗ
    Документ.РазовоеНачисление КАК РазовоеНачисление
```

в консоле запросов все выводит как надо

Пытаюсь сделать программно - получаю пустые строки

```1c
    ЗапросНачисление = Новый Запрос;
    ЗапросНачисление.Текст =
    "ВЫБРАТЬ
    | РазовоеНачисление.Начисления.Сотрудник КАК Сотрудник,
    | РазовоеНачисление.Начисления.Результат КАК Компенсация
    |ИЗ
    | Документ.РазовоеНачисление КАК РазовоеНачисление";

    ВыборкаНачисление = ЗапросНачисление.Выполнить().Выбрать();
    Пока ВыборкаНачисление.Следующий() Цикл
    Сообщить("Сотрудник = "+ВыборкаНачисление.Сотрудник);
    Сообщить("Компенсация = "+ВыборкаНачисление.Компенсация);
    КонецЦикла;
```

Подскажите, что не так?
---
код действительно с пробелом
проблема оказалась в запросе. Был необходим вложенный запрос.

Правильный запрос:

```1c
    ВЫБРАТЬ
    РазовоеНачислениеНачисления.Сотрудник КАК Сотрудник,
    РазовоеНачислениеНачисления.Результат КАК Компенсация
    ИЗ
    Документ.РазовоеНачисление КАК РазовоеНачисление
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РазовоеНачисление.Начисления КАК РазовоеНачислениеНачисления
    ПО РазовоеНачисление.Ссылка = РазовоеНачислениеНачисления.Ссылка
    ГДЕ
    РазовоеНачислениеНачисления.Сотрудник = &Сотрудник
    И РазовоеНачисление.Начисление = &Начисление
```

Странно, что в консоле запросов первоначальный запрос отрабатывает верно
---
и разрешенные добавьте
---
Сделай через конструктор запросов явно криво текст написал.
---
запрос сделан через конструктор

вот полный текст запроса (опустил условия)

```1c
    ВЫБРАТЬ РАЗРЕШЕННЫЕ
    РазовоеНачисление.Начисления.Сотрудник КАК Сотрудник,
    РазовоеНачисление.Начисления.Результат КАК Компенсация
    ИЗ
    Документ.РазовоеНачисление КАК РазовоеНачисление
    ГДЕ
    РазовоеНачисление.Начисления.Сотрудник = &Сотрудник
    И РазовоеНачисление.Начисление = &Начисление
```

результат одинаков, что с ними, что без них
---
проверьте значения при установке параметров запроса
---
И запрос у тебя странный. Сразу к табличной части обращайся.
---
Сранно это
Sel ect бла бла Fr om бла бла
А тут видно, что человек старался:) Вопрос о помощи задает
---
Возможно консоль выполняет код в привилегированном режиме, а ваш код у пользователя не имеет доступа к данным по правам
---
У пользователя полные права
---
банальный вопрос, у вас управляемые формы? а параметры запроса какие?
---
управляемые формы.
Запрос в Модуле объекта Внешней печатной формы
---
параметры в коде заполнили?
---
да.
Вот полный код:

```1c
    ЗапросНачисление = Новый Запрос;
    ЗапросНачисление.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    | РазовоеНачисление.Начисления.Сотрудник.Ссылка КАК Сотрудник,
    | РазовоеНачисление.Начисления.Результат КАК Компенсация
    |ИЗ
    | Документ.РазовоеНачисление КАК РазовоеНачисление
    |ГДЕ
    | РазовоеНачисление.Начисления.Сотрудник = &Сотрудник
    | И РазовоеНачисление.Начисление = &Начисление";

    ЗапросНачисление.УстановитьПараметр("Сотрудник", Выборка.Сотрудник.Ссылка);

    Начисление = ПланыВидовРасчета.Начисления.НайтиПоКоду("ВППУ ");
    ЗапросНачисление.УстановитьПараметр("Начисление", Начисление.Ссылка);

    ВыборкаНачисление = ЗапросНачисление.Выполнить().Выбрать();
    Пока ВыборкаНачисление.Следующий() Цикл

    Сообщить("Сотрудник = "+ВыборкаНачисление.Сотрудник);
    Сообщить("Компенсация = "+ВыборкаНачисление.Компенсация);

    КонецЦикла;
```
---
Выборка.Сотрудник - содержит корректное значение ?
---
Да
---
похоже на запрос в цикле обработки результата другого запроса (Выборка) ...... может первый запрос надо переписать...
---
Выборка.Сотрудник.Ссылка
Начисление.Ссылка

".Ссылка" тут лишние

Обращайтесь в запросе к табличной части, как уже писали: "из Документ.РазовоеНачисление.Начисления"

Проверьте соответствие типов параметров.

И да, это делается левым соединением в исходном запросе.
---
Обращайтесь в запросе к табличной части, как уже писали: "из Документ.РазовоеНачисление.Начисления"
Это верный вариант. В варианте топик-стартера надо двойную выборку сделать, чтобы из основной таблицы получить данные ТЧ.
---
Точно есть вид расчета с кодом "ВППУ "?
Прямо с пробелом в конце?
---
да, код именно с пробелом
---
ой насмешили.

```1c
    Начисление = ПланыВидовРасчета.Начисления.НайтиПоКоду("ВППУ ");
```

А код точно с пробелом?)
Меняйте на статику!
---
и теперь проверьте в отладчике - в запросе параметры заполнены?
---
а такое тоже пустое?

```1c
    ЗапросНачисление = Новый Запрос;
    ЗапросНачисление.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    | РазовоеНачисление.Начисления.Сотрудник.Ссылка КАК Сотрудник,
    | РазовоеНачисление.Начисления.Результат КАК Компенсация
    |ИЗ
    | Документ.РазовоеНачисление КАК РазовоеНачисление";

    ВыборкаНачисление = ЗапросНачисление.Выполнить().Выбрать();
    Пока ВыборкаНачисление.Следующий() Цикл

    Сообщить("Сотрудник = "+ВыборкаНачисление.Сотрудник);
    Сообщить("Компенсация = "+ВыборкаНачисление.Компенсация);

    КонецЦикла;
```

раз это внешняя, безопасный режим выключен (а то бывают с ним приколы)?

если этот код поместить в обработку и встроить в конфу данные есть?
---
Запрос переписать. Выборку сотрудников засунуть в массив и передать параметром в запрос начислений. Запрос в цикле зло.

```1c
    МассивСотров = Новый Массив;

    Пока Выборка.Следующий() Цикл
    МассивСотров.Добавить(Выборка.Сотрудник);
    КонецЦикла;

    ЗапросНачисление = Новый Запрос;
    ЗапросНачисление.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    | Начисления.Сотрудник КАК Сотрудник,
    | Начисления.Результат КАК Компенсация
    |ИЗ
    | Документ.РазовоеНачисление.Начисления КАК Начисления
    |ГДЕ
    | Начисления.Сотрудник В (&Сотрудник)
    | И Начисления = &Начисление";

    ЗапросНачисление.УстановитьПараметр("Сотрудник", МассивСотров);

    Начисление = ПланыВидовРасчета.Начисления.НайтиПоКоду("ВППУ ");
    ЗапросНачисление.УстановитьПараметр("Начисление", Начисление);

    ВыборкаНачисление = ЗапросНачисление.Выполнить().Выбрать();
    Пока ВыборкаНачисление.Следующий() Цикл

    Сообщить("Сотрудник = "+ВыборкаНачисление.Сотрудник);
    Сообщить("Компенсация = "+ВыборкаНачисление.Компенсация);

    КонецЦикла;
```

И код начисления проверьте - действительно ли "ВППУ "

Странная тенденция - решение минутных вопросов растягивается на несколько дней и сотню ответов
---
код действительно с пробелом
проблема оказалась в запросе. Был необходим вложенный запрос.

Правильный запрос:

```1c
    ВЫБРАТЬ
    РазовоеНачислениеНачисления.Сотрудник КАК Сотрудник,
    РазовоеНачислениеНачисления.Результат КАК Компенсация
    ИЗ
    Документ.РазовоеНачисление КАК РазовоеНачисление
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РазовоеНачисление.Начисления КАК РазовоеНачислениеНачисления
    ПО РазовоеНачисление.Ссылка = РазовоеНачислениеНачисления.Ссылка
    ГДЕ
    РазовоеНачислениеНачисления.Сотрудник = &Сотрудник
    И РазовоеНачисление.Начисление = &Начисление
```

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